微信小程序如何制作简单的点击弹窗效果
Admin 2022-08-12 群英技术资讯 628 次浏览
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进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
ajax文件上传用jquery ajaxFileUpload插件的话会非常方便,那么在什么情况下回用到ajax文件上传呢?比如我们在submit提交form表单之前可能要先上传图片,或者是没有上传按钮,选中直接上传文件,都要用到ajax文件上传功能,下面来学习一下ajax上传excel文件
目录前言一、forEach(),用于遍历数组,无返回值二、map(),用于遍历数组,返回处理之后的新数组三、every(),用于判断数组中的每一项元素是否都满足条件,返回一个布尔值四、some(),用于判断数组中的是否存在满足条件的元素,返回一个布尔值五、filter(),用于筛选数组中满足条件的元素,返回一个筛选后的
这篇文章主要为大家详细介绍了微信小程序实现表单验证,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
目录vue.js项目打包上线这里我简单的列出这个过程vue.js打包之后遇到的坑打包之后没有被渲染出来路由(router)mode:history,导致页面不能渲染问题vue.js项目打包上线最近一直坚持每个月写一个小的vue.js 开发的项目,最后开发完成后想到很久之前给别人回答的一个问题:vue的项目如何上线,当时
这篇文章给大家分享的是JS中删除元素hidden属性的方法。这里我们使用到removeAttribute()方法来实现,那么实现代码怎样写呢?文中有示例代码供大家参考,感兴趣的朋友可以参考,接下来就跟随小编一起了解看看吧。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008