微信小程序如何制作简单的点击弹窗效果
Admin 2022-08-12 群英技术资讯 661 次浏览
1.现在page文件里面定义一个dh的文件,然后在component定义一个可复用的组件为dislog
然后在dh的json文件中引入这个组件
{ "usingComponents": { "dialog":"../../component/dialog/index" } }
2.dh中.js文件
// pages/dh/index.js Page({ data: { status:false }, handleTap(){ this.setData({ status:true }) }, handlecancel(){ this.setData({ status:false }) }, handleConfirm(){ this.setData({ status:false }) } })
.wxml文件中
<dialog title="警告" status="{{status}}" bind:cancel='handlecancel' bind:confirm="handleConfirm" content='啦啦啦我也不知道这什么哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈啊哈'> <image src='//gw.alicdn.com/imgextra/i1/O1CN016q4k5T1IPNCZM2RTx_!!6000000000885-0-tps-640-260.jpg_Q75.jpg'></image> </dialog> <view bindtap='handleTap' class='show'>显示</view>
.wxss文件
/* pages/dh/index.wxss */ .show{ /* width:100%; height:100vh; */ width:200rpx; height:140rpx; background:#ccc; border-radius:20rpx; color:#fff; text-align:center; line-height:140rpx; font-size:40rpx; margin:0 auto; margin-top:470rpx; }
在组件中dialog文件中
index.js文件
// component/dialog/index.js Component({ /** * 组件的属性列表 */ properties: { title:{ type:String, value:"标题" }, content:String, status:{ type:Boolean, value:false, } }, /** * 组件的初始数据 */ data: { }, /** * 组件的方法列表 */ methods: { handleCancel(){ this.triggerEvent("cancel") }, handleConfirm(){ // this.triggerEvent('confirm') this.triggerEvent('confirm') } } })
wxml文件
<view class="mask" wx:if="{{status}}"> <view class="dialog"> <view class="dialog-header"> {{title}} </view> <view class="dialog-body"> <view wx:if="{{content}}" class='content'>{{content}}</view> <slot></slot> </view> <view class="dialog-footer"> <view class="dialog-btn" bindtap='handleCancel'>取消</view> <view class="dialog-btn" bindtap='handleConfirm'>确认</view> </view> </view> </view>
wxss文件
.mask{ position:fixed; top:0; left:0; right:0; bottom:0; background-color:rgb(0,0,0,0.3); display:flex; align-items: center; justify-content:center; } .dialog{ width:600rpx; height:auto; background:#fff; border-radius:30rpx; } .dialog-header{ padding:30rpx 0; text-align:center; font-size:36rpx; } .dialog-footer{ display:flex; } .dialog-btn{ flex:1; text-align:center; padding:40rpx 0; border-top:1rpx solid #eee; } .dialog-btn:first-child{ border-right:1rpx solid #eee; } .dialog-body{ padding:30rpx; } .content { text-indent: 72rpx; color:#333; } .dialog-body image{ width:100%; }
这样就可以实现一个简单的点击出现弹窗的效果。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
目录@ ~ 相对路径 路径别名设置项目设置src相对路径为@第一步 创建vue.config.js文件第二步 添加代码@ ~ 相对路径 路径别名设置./这是相对路径的意思,同级目录。../上级目录。@/这是webpack设置的路径别名。在build/webpack.base.conf这个文件里面设置了@具体指的是什么在
这篇文章主要给大家分享怎样用vue框架来实现选择题的答题功能,也就是选对选项跳下一题,选错则提示重新答题,下文有具体的代码,感兴趣的朋友可以参考,下面我们一起来了解一下吧。
这篇文章给大家分享的是vuex中刷新数据消失的问题的解决方法,下文有具体的问题分析、解决思路及方法,文中示例代码介绍的非常详细,感兴趣的朋友接下来一起跟随小编看看吧。
怎样用JS实现复选框的全选功能?复选框的全选功能便于多选操作,也是比较实用的一个功能,对此这篇文章就给大家分享JS实现复选框的全选的代码,感兴趣的朋友就接着往下看吧。
目录ant design vue的form表单取值官方中有以下两种取值方式ant design of vue 学习之表单formv-decorator(表单验证,内置绑定,初始值)数据获取与填充表单实例ant design vue的form表单取值官方中有以下两种取值方式因为不是很熟悉,所以还是查了文档找了一下使用方式
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008