相信各人在开发小程序时会遇到某个功效多次使用的情形,,,,,,好比弹出框。。这个时间各人首先想到的是组件化开发,,,,,,就是把弹出框封装成一个组件,,,,,,然后那里使用那里就挪用,,,,,,对,,,,,,看来各人都是有思绪的人,,,,,,可是要怎样实现呢。。

微信小程序封装组件详细实现方法:
1.新建component文件夹存放pp电子组件,,,,,,里边存放的就是我们所用的组件,,,,,,我们今天要做的事弹出框,,,,,,新建文件夹popup存放pp电子组件模板,,,,,,点击右键选择新建component,,,,,,就会自动天生组件的模板wxss、wxml、json、js,,,,,,如图

2.我们可以写一些组件样式和结构,,,,,,跟页面写法类似,,,,,,我就未几说了,,,,,,直接把代码贴出 :
popup.wxml
<view class="wx-popup" hidden="{{flag}}">
<view class='popup-container'>
<view class="wx-popup-title">{}</view>
<view class="wx-popup-con">{{content}}</view>
<view class="wx-popup-btn">
<text class="btn-no" bindtap='_error'>{{btn_no}}</text>
<text class="btn-ok" bindtap='_success'>{{btn_ok}}</text>
</view>
</view>
</view>
popup.wxss
/* component/popup.wxss */
.wx-popup {
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, .5);
}
.popup-container {
position: absolute;
left: 50%;
top: 50%;
width: 80%;
max-width: 600rpx;
border: 2rpx solid #ccc;
border-radius: 10rpx;
box-sizing: bordre-box;
transform: translate(-50%, -50%);
overflow: hidden;
background: #fff;
}
.wx-popup-title {
width: 100%;
padding: 20rpx;
text-align: center;
font-size: 40rpx;
border-bottom: 2rpx solid red;
}
.wx-popup-con {
margin: 60rpx 10rpx;
text-align: center;
}
.wx-popup-btn {
display: flex;
justify-content: space-around;
margin-bottom: 40rpx;
}
.wx-popup-btn text {
display: flex;
align-items: center;
justify-content: center;
width: 30%;
height: 88rpx;
border: 2rpx solid #ccc;
border-radius: 88rpx;
}
样式和结构和结构已经写好了接下来要介绍的就是
Component结构器
Component结构器可用于界说组件,,,,,,挪用Component结构器时可以指定组件的属性、数据、要领等。。

Tips:
component介绍完后就是最为要害的js了
popup.js:
Component({
options: {
multipleSlots: true // 在组件界说时的选项中启用多slot支持
},
/**
* 组件的属性列表
*/
properties: {
title: { // 属性名
type: String, // 类型(必填),,,,,,现在接受的类型包括:String, Number, Boolean, Object, Array, null(体现恣意类型)
value: '问题' // 属性初始值(可。。,,,,,,若是未指定章会凭证类型选择一个
},
// 弹窗内容
content: {
type: String,
value: '内容'
},
// 弹窗作废按钮文字
btn_no: {
type: String,
value: '作废'
},
// 弹窗确认按钮文字
btn_ok: {
type: String,
value: '确定'
}
},
/**
* 组件的初始数据
*/
data: {
flag: true,
},
/**
* 组件的要领列表
*/
methods: {
//隐藏弹框
hidePopup: function () {
this.setData({
flag: !this.data.flag
})
},
//展示弹框
showPopup () {
this.setData({
flag: !this.data.flag
})
},
/*
* 内部私有要领建议以下划线开头
* triggerEvent 用于触发事务
*/
_error () {
//触爆发废回调
this.triggerEvent("error")
},
_success () {
//触发乐成回调
this.triggerEvent("success");
}
}
})
上边会用到一个 triggerEvent下面我们就来介绍下:
自界说组件触发事务时,,,,,,需要使用 triggerEvent 要领,,,,,,指定事务名、detail工具和事务选项。。
现在一个弹窗的组件就封装好了接下来就是挪用了。。
挪用的时间需要在挪用的页面新建一个json文件,,,,,,json文件里需要设置usingComponents就是引用组件,,,,,,看代码:
index.json
{
"usingComponents": {
"popup": "/component/popup/popup"
}
}
现在基本上完成了需要的就是在首页引用了。。
<!--index.wxml-->
<view class="container">
<view class="userinfo">
<button bindtap="showPopup"> 点我 </button>
</view>
<popup id='popup'
title='小组件'
content='学会了吗'
btn_no='没有'
btn_ok='学会了'
bind:error="_error"
bind:success="_success">
</popup>
</view>
设置index.js加上点击事务
//index.js
//获取应用实例
const app = getApp()
Page({
onReady: function () {
//获得popup组件
this.popup = this.selectComponent("#popup");
},
showPopup() {
this.popup.showPopup();
},
//作废事务
_error() {
console.log('你点击了作废');
this.popup.hidePopup();
},
//确认事务
_success() {
console.log('你点击了确定');
this.popup.hidePopup();
}
})
一个弹窗组件就完成了。。
KESION pp电子软件
KESION pp电子软件是海内领先的在线教育软件及私域社交电商软件服务提供商,,,,,,恒久专注于为企业提供在线教育软件及社交电商SaaS平台解决方案。。
公司焦点产品云开店SaaS社交电商服务平台、在线教育SaaS服务平台、教育企业数字化SaaS云平台、企微营销助手、私有化自力安排品牌网校和在线教育咨询等。。KESION 一直通过手艺立异,,,,,,提供产品和服务,,,,,,助力企业向数字化转型,,,,,,通过科技驱动商业刷新,,,,,,让商业变得更智慧!
今天,,,,,,给各人安利一个很不错的Fundebug小程序bug监控插件,,,,,,它可以监控函数的挪用以及纪录函数参数值。。...
小程序实现长按删除指定图片需要如那里置实现,,,,,,下面为各人介绍实现长按删除指定图片的操作流程。。...