• 注册
当前位置:1313e > 小程序 >正文

微信小程序点击出现弹窗

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%;}

这样就可以实现一个简单的点击出现弹窗的效果

本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 162202241@qq.com 举报,一经查实,本站将立刻删除。

最新评论

欢迎您发表评论:

请登录之后再进行评论

登录
相关推荐