简单的 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.mzph.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;即…

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…

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];…

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;提供了代码智能编辑、低代…

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

前言&#xff1a; 接口自动化是指模拟程序接口层面的自动化&#xff0c;由于接口不易变更&#xff0c;维护成本更小&#xff0c;所以深受各大公司的喜爱。 接口自动化包含2个部分&#xff0c;功能性的接口自动化测试和并发接口自动化测试。 本次文章着重介绍第一种&#xff0c…

【开发问题】vue的前端和java的后台,用sm4,实现前台加密,后台解密

sm4加密 vue引入的包代码加密解密 javamaven代码运行结果 vue 引入的包 npm install sm-crypto代码加密解密 加密&#xff1a; key &#xff1a;代表着密钥&#xff0c;必须是16 字节的十六进制密钥 password &#xff1a;加密前的密码 sm4Password &#xff1a;代表sm4加密…

【计算机网络】应用层电子邮件协议

一、电子邮件系统架构 电子邮件是一个典型的异步通信系统&#xff0c;发送方从UA&#xff0c;也就是邮件客户端&#xff0c;通过应用层SMTP协议&#xff0c;传输层tcp协议&#xff0c;发送给发送方的邮件服务器&#xff0c;比如使用的是163邮箱&#xff0c;163提供的SMTP服务器…

python中实现yaml文件管理参数

yaml参数管理器 这是文件目录关系&#xff0c;其中config存放.yaml文件&#xff0c;scripts存放py文件 然后就可以自由使用了&#xff1a; import yaml import os#获取路径 script_directory os.path.dirname(os.path.abspath(__file__)) # 相对于脚本文件的路径 image_relat…

Swift “黑魔法”之动态获取类实例隐藏属性的值

概览 在 Swift 代码的调试中,我们时常惊叹调试器的无所不能:对于大部分“黑盒”类实例的内容,调试器也都能探查的一清二楚。 想要自己在运行时也能轻松找到 Thread 实例“私有”属性的值吗(比如 seqNum)? 在本篇博文中您将学到如下内容: 概览1. 借我,借我,一双慧眼吧…

字符统计[c]

#include<stdio.h> #include<string.h> int main() {int a,b,c;abc0;char s[100];int i0;while(1){i;scanf("%c",&s[i]);if(s[i]?)break;}for(int k1;k<i;k){if(s[k]>48&&s[k]<57){a;//数字}else if((s[k]>65&&s[k]<…

Altair Radioss碰撞 安全与冲击 衡祖仿真

Altair Radioss是解决瞬态加载工况下非线性问题的领先的结构分析求解器。其具备高扩展性、高品质、高鲁棒性&#xff0c;以及诸多功能&#xff1a;多域求解技术、高级材料功能(复合材料)等。Radioss求解器被广泛应用于汽车、航空航天、电子/家电、包装、轨道机车、生物医疗、能…

【算法优选】 动态规划之路径问题——贰

文章目录 &#x1f38b;前言&#x1f332;[下降最小路径和](https://leetcode.cn/problems/minimum-path-sum/)&#x1f6a9;题目描述&#x1f6a9;算法思路&#xff1a;&#x1f6a9;代码实现 &#x1f38d;[最小路径和](https://leetcode.cn/problems/minimum-path-sum/)&…

viple与物理机器人(一):线控模拟

为了检测viple程序与物理机器人是否能顺利连接上 如果能顺利连接上&#xff0c;那么&#xff0c;可以通过内建事件从而控制物理机器人的前进、后退、左转、右转以及暂停。 如果不能连接上&#xff0c;首先&#xff0c;程序无法控制物理机器人&#xff0c;其次&#xff0c;当vip…

公交站间的距离

&#x1f388; 算法并不一定都是很难的题目&#xff0c;也有很多只是一些代码技巧&#xff0c;多进行一些算法题目的练习&#xff0c;可以帮助我们开阔解题思路&#xff0c;提升我们的逻辑思维能力&#xff0c;也可以将一些算法思维结合到业务代码的编写思考中。简而言之&#…

我的 CSDN 三周年创作纪念日:2020-12-12

本人大叔一枚&#xff0c;自1992年接触电脑&#xff0c;持续了30年的业余电脑发烧爱好者&#xff0c;2022年CSDN博客之星Top58&#xff0c;阿里云社区“乘风者计划”专家博主。自某不知名财校毕业后进入国有大行工作至今&#xff0c;先后任职于某分行信息科技部、电子银行部、金…

扔掉xshell,基于 QT 实现一个串口命令行工具(带源码)

背景 xshell 带有支持串口的命令行能力&#xff0c; 可以方便的和下位机用命令进行交互&#xff0c;如下图所示&#xff1a; msh > msh > msh >version\ | / - RT - Thread Operating System/ | \ 3.1.3 build Nov 7 20232006 - 2019 Copyright by rt-thre…

this.$emit(‘update:isVisible‘, false)作用

这个写是不是很新颖&#xff0c;传父组件传值&#xff01;这是什么鬼。。。 假设你有以下逻辑业务。在A页面弹出一个组件B&#xff0c;A组件里面使用B组件&#xff0c;是否展示B组件你使用的是baselineShow变量控制&#xff01; <BaselineData :isVisible.sync"basel…