簡單的 u-popup 彈出框

??????????uniapp中的popup組件可以用于彈出簡單的提示框、操作框、菜單等。它可以通過position屬性控制彈出框的位置,不同的position值會使得彈出框呈現不同的彈出形式

目錄

一、實現思路

二、實現步驟

????①view部分展示

?????②JavaScript 內容

? ? ?③css中樣式展示

三、效果展示

四、小結 + 注意事項


一、實現思路

? ? ? 在需要的標簽綁定了一個點擊事件,點擊按鈕可以控制顯示或隱藏uni-popup組件。

???????uni-popup組件的v-model值與data中定義@close="show = false" @open="show = true"?變量綁定,

???????? uni-popup組件的position屬性設置為"bottom",表示從底部彈出。

?????????uni-popup組件的show屬性設置為true,表示顯示遮罩層。

?????????uni-popup組件的animation屬性設置為pop-up,表示彈出動畫效果為pop-up。

????????uni-popup組件中的內容可以自定義,這里是一個簡單的view標簽,包含一些文字和按鈕。

????????uni-popup組件支持拖曳的功能,默認開啟拖曳的方式為長按拖動或鼠標拖動。

二、實現步驟

????????①view部分展示

<template><view style="margin-top: 300rpx;"><view class="records"><view v-for="(item, index) in tabList" class="getlist" :key="index"><view class="flex-between" style="margin-top: 32rpx;"><!-- 彈出排列 --><view>{{ item.cations }}</view><view class="flex" @click="handleSelectCategroy(index)"><view class="flex"><view style="margin-right: 10rpx;color: #999; font-size: 32rpx;">{{ item.categoryText }}</view><view style="margin-left: 12rpx;"><u-icon name="arrow-right" size="14" color="#666"></u-icon></view></view></view></view></view></view><!-- 彈出層內容 --><u-popup :show="show" mode="bottom" @close="show = false" @open="show = true" closeable="true"><view style="border-bottom: 1rpx solid #E5E5E5;padding:24rpx 0 32rpx; text-align: center;">選擇</view><view class="flex-colomn"><view v-for="(item, index) in arrlist" class="flex-between .ui-font" :key="index" @click="tab(item)"style="border-bottom: 1rpx solid #E5E5E5;padding:32rpx 24rpx; "><view :class="[titleText === item.title ? 'active' : '']">{{ item.title }}</view><view><u-icon name="checkmark" size="15"></u-icon></view></view></view></u-popup></view>
</template>

?????②JavaScript 內容

<script>export default {data() {return {//彈出層show: false,titleText: '巧克力餅干',arrlist: [{id: 1,title: '西紅柿小面包'}, {id: 2,title: '其他'}, {id: 3,title: '其他001'}, {id: 4,title: '小其他'}, {id: 5,title: '大其他'}],tabList: [{cations: "選擇你喜歡的面包",categoryText: "請選擇你喜歡的"}, ]};},methods: {// 彈出選擇值handleSelectCategroy(index) {this.show = true //當前彈出層為truethis.curActiveCategroyIndex = index},valChange(e) {console.log('當前值為: ' + e.value)},tab(item) {this.show = falsethis.titleText = item.titlethis.tabList = this.tabList.map((it, i) => {if (this.curActiveCategroyIndex === i) {it.categoryText = this.titleText}return it})},}}
</script>

????????③css中樣式展示

<style lang="scss" scoped>.records {padding: 24rpx;background: #FFFFFF;border-radius: 16rpx;}.ui-font {font-size: 28rpx;color: #333333;text-align: center;border-bottom: 1rpx solid #E5E5E5;padding: 28rpx 0px;}.active {color: #428AF6}
</style>

三、效果展示

????????? ? ? ??

四、小結 + 注意事項

1. u-popup組件盡量與整個的第二層位置,否則會失效

2.常用屬性值:

????????show【控制彈出窗口的顯示與隱藏】
????????????????類型:Boolean
????????????????默認值:false
????????????????。當為 true 時,彈出窗口將顯示;當為 false 時,彈出窗口將隱藏。

????????position 【設置彈出窗口的位置。可選值】
????????????????類型:String
????????????????默認值:center

? ? ? ? ? ? ? ? top: 彈出窗口在頂部顯示。
? ? ? ? ? ? ? ?bottom: 彈出窗口在底部顯示。
? ? ? ? ? ? ? ? left: 彈出窗口在左側顯示。
? ? ? ? ? ? ? ?right: 彈出窗口在右側顯示。
? ? ? ? ? ? ? ?center: 彈出窗口在屏幕中央顯示。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/214423.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/214423.shtml
英文地址,請注明出處:http://en.pswp.cn/news/214423.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Linux系統---基于Pipe實現一個簡單Client-Server system

顧得泉&#xff1a;個人主頁 個人專欄&#xff1a;《Linux操作系統》 《C/C》 《LeedCode刷題》 鍵盤敲爛&#xff0c;年薪百萬&#xff01; 一、題目要求 Server是一個服務器進程&#xff0c;只能進行整數平方運算。Client要計算一個整數的平方的平方的平方&#xff0c;即…

聊聊 Jetpack Compose 原理 -- 穿透刺客 CompositionLocal

Compose 官方說明一直很簡潔&#xff1a;CompositionLocal 是通過組合隱式向下傳遞數據的工具。 我們先來看一段代碼&#xff1a; class MainActivity : ComponentActivity() {override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)setCo…

datav-輪播排名-對數據進行處理

前言 對于大屏需求我們排名數據輪播也是經常需要用到的需求&#xff0c;datav也是給我們提供了 不是說我們自己不能寫&#xff0c;而是提供好的輪子比我們自己 寫的&#xff0c;更全面&#xff0c;更周到&#xff0c; 沒有特殊需求的話&#xff0c;使用datav配置一下完成這個…

mysqlsh導入json,最終還得靠navicat導入json

工作需要將一個巨大的10G的json導入mysql數據庫。 看到mysql官方有對json導入的支持。 如下&#xff1a; MySQL :: Import JSON to MySQL made easy with the MySQL Shell $ mysqlsh rootlocalhost:33300/test --import /path_to_file/zips.json Creating a session to root…

產品經理進階:以客戶為中心的8個維度

目錄 簡介 以客戶為中心 流程和組織維度 產品維度 CSDN學院《硬件產品進階課》

python:六種算法(DBO、RFO、WOA、GWO、PSO、GA)求解23個測試函數(python代碼)

一、六種算法簡介 1、蜣螂優化算法DBO 2、紅狐優化算法RFO 3、鯨魚優化算法WOA 4、灰狼優化算法GWO 5、粒子群優化算法PSO 6、遺傳算法GA 二、6種算法求解23個函數 &#xff08;1&#xff09;23個函數簡介 參考文獻&#xff1a; [1] Yao X, Liu Y, Lin G M. Evolution…

讀書筆記 | 自我管理的關鍵是提高執行力

哈嘍啊&#xff0c;你好&#xff0c;我是雷工&#xff01; 有句話說&#xff0c;能管好自己才是真的本事。 自我管理&#xff0c;管好自己很重要。 我們之所以懂得這么多的道理&#xff0c;卻依然過不好這一生&#xff1f; 很大部分原因是因為管不住自己&#xff0c;做不到。 …

性能測試基礎

性能測試分類 客戶端性能&#xff1a;測試APP自身的性能&#xff0c;例如CPU、內存消耗&#xff1b;web頁面元素渲染速度 服務端性能&#xff1a;測試服務端項目程序的支持的并發、處理能力、響應時間等&#xff0c;主要通過接口來做性能測試 性能測試指標 并發 同時向服務…

大一作業習題

第一題&#xff1a;答案&#xff1a; #include <stdio.h> void sort(int a[], int m) //將數組a的前m個元素(從小到大)排序 {int i 0;for (i 0; i < m - 1; i){int j 0;int flag 1;for (j 0; j < m - 1 - i; j){if (a[j] > a[j 1]){int t 0;t a[j];…

Java八股文面試全套真題【含答案】- Servlet篇

以下是一些關于Servlet的經典面試題以及它們的答案&#xff1a; 什么是 Servlet&#xff1f; 答案&#xff1a;Servlet 是運行在服務器上&#xff0c;用于處理客戶端請求并生成響應的 Java 類。 Servlet 和 JSP 之間的區別是什么&#xff1f; 答案&#xff1a;Servlet 是基于…

1.鴻蒙應用程序開發app_hap開發環境搭建

1.下載Node.js, Javascipts的運行環境 node.js版本下載v12.18.3/https://www.cnblogs.com/txwtech/p/17865780.html 2.下載并安裝DevEco Studio DevEco Studio 3.1 DevEco Studio 3.1配套支持HarmonyOS 3.1版本及以上的應用及服務開發&#xff0c;提供了代碼智能編輯、低代…

Docker筆記:Docker中簡單配置Mysql/Redis/Mongodb容器

Docker 配置 Mysql 容器 1 &#xff09;方案1&#xff1a;基于centos等linux操作系統 啟動centos鏡像&#xff0c;在里面安裝 mysql這樣比較麻煩&#xff0c;配置的東西很多 … 2 &#xff09;方案2&#xff1a;直接用 mysql 鏡像 (推薦) $ docker pull mysql 下載鏡像$ do…

589. N 叉樹的前序遍歷

589. N 叉樹的前序遍歷 java1&#xff1a;stack棧&#xff1a;沒看懂 class Solution {public List<Integer> preorder(Node root) {List<Integer> res new ArrayList<Integer>();if (root null) {return res;}Map<Node, Integer> map new HashMa…

C盤瘦身,C盤清理

以下只是我的C盤清理經驗~ 一.【用軟件簡單清理C盤】 使用一些垃圾清理軟件&#xff0c;簡單的初步把C盤先清理一遍。&#xff08;這種軟件太多我就不推薦了……&#xff09; 二.【WPS清理大師】 因為我電腦裝了WPS&#xff0c;發現右鍵單擊C盤有個選項【釋放C盤空間】&#xf…

接口自動化框架(Pytest+request+Allure)

前言&#xff1a; 接口自動化是指模擬程序接口層面的自動化&#xff0c;由于接口不易變更&#xff0c;維護成本更小&#xff0c;所以深受各大公司的喜愛。 接口自動化包含2個部分&#xff0c;功能性的接口自動化測試和并發接口自動化測試。 本次文章著重介紹第一種&#xff0c…

Vue3.3.4中watch無法監測props的更改

背景 網上說了很多解決方案&#xff0c;都是通過watch(() > props.value, (newValue, oldValue) > {})解決&#xff0c;或者是加上{deep: true}附加屬性。但是我在Vue3.3.4中&#xff0c;還是無法解決。 下面說一下我的解決方案。 解決方案 通過父組件調用子組件defineE…

點云/Mesh 常見處理庫和軟件匯總

注&#xff1a;參考 網址1、網址2 文章目錄 軟件通用點云/Mesh處理庫通用幾何處理庫專用功能庫 軟件 Processing MeshLabCloudCompareTrimeshPyVistaVedo Visualization Simple-3dvizPlotOptiX (Requires CUDA-enabled GPU)PolyscopePyrender 通用點云/Mesh處理庫 PCL &am…

【開發問題】vue的前端和java的后臺,用sm4,實現前臺加密,后臺解密

sm4加密 vue引入的包代碼加密解密 javamaven代碼運行結果 vue 引入的包 npm install sm-crypto代碼加密解密 加密&#xff1a; key &#xff1a;代表著密鑰&#xff0c;必須是16 字節的十六進制密鑰 password &#xff1a;加密前的密碼 sm4Password &#xff1a;代表sm4加密…

Python之格式化保存數據點

功能&#xff1a;將平面點集存儲為格式化txt文檔&#xff0c;每個坐標值為5位整數&#xff0c;前三位為整數&#xff0c;后2位為小數 輸入&#xff1a;平面點坐標&#xff0c;用列表存儲&#xff0c;列表的元素為點坐標元組 輸出&#xff1a;txt文件&#xff0c;每行一個點坐…

【計算機網絡】應用層電子郵件協議

一、電子郵件系統架構 電子郵件是一個典型的異步通信系統&#xff0c;發送方從UA&#xff0c;也就是郵件客戶端&#xff0c;通過應用層SMTP協議&#xff0c;傳輸層tcp協議&#xff0c;發送給發送方的郵件服務器&#xff0c;比如使用的是163郵箱&#xff0c;163提供的SMTP服務器…