微信小程序 自己制作小組件實(shí)例詳解
微信小程序 制作小組件
對(duì)于我們?nèi)粘V幸恍┕驳臇|西可以封裝成組件,然后在各個(gè)頁(yè)面使用。對(duì)于小程序,我們也可以封裝我們需要的一些公共的東西。
這里我們講解一個(gè)小插件。


如上圖所示,一個(gè)小插件,單擊是展開,在單擊關(guān)閉的時(shí)候,按鈕關(guān)閉。
頁(yè)面的WXML (APP.wxml)
<template name="widget-dialog-iconList">
<view class="com-widget-iconList {{close==1?'hideImg':''}}" style="display:flex;flex-direction:row;">
<view style="display:flex;flex-direction:row;">
<view class="left-icon" style="display:flex;flex-direction:row;">
<view class="left-circle"></view>
<image class="icon1" src="http://m.dev.vd.cn/static/xcx/v1/goo/md_logo.png"></image>
</view>
<view class="middle_icon " style="display:flex;flex-direction:row;">
<navigator url="../tua/home">
<view class="section1">
<view><image class="icon2" src="http://m.dev.vd.cn/static/xcx/v1/goo/firsticon.png"></image></view>
<view class="text">首頁(yè)</view>
</view>
</navigator>
<navigator url="../ord/list">
<view class="section2">
<view><image class="icon2" src="http://m.dev.vd.cn/static/xcx/v1/goo/orderIcon.png"></image></view>
<view class="text">訂單</view>
</view>
</navigator>
<navigator url="../usr/center">
<view class="section3">
<view><image class="icon3" src="http://m.dev.vd.cn/static/xcx/v1/goo/myself.png"></image></view>
<view class="text">我的</view>
</view>
</navigator>
<view class="right-icon" style="display:flex;flex-direction:row;">
<image class="iconright" src="http://m.dev.vd.cn/static/xcx/v1/goo/delAllIcon.png" bindtap="closeAllIcon"></image>
</view>
</view>
</view>
</view>
<view class="iconOnly {{close==0?'hideImg':''}}">
<image class="iconOnlyPic" src="http://m.dev.vd.cn/static/xcx/v1/goo/md_logo.png" bindtap="showAllIcon"></image>
</view>
</template>
這里主要是插件的壓面展示效果,都寫在<template>標(biāo)簽里面就可以了。
頁(yè)面的JS (APP.js)
var iconList = {}; //設(shè)置一個(gè)對(duì)象名字存放數(shù)據(jù)
iconList.Wdg= {
//存放要給VIEW層的頁(yè)面數(shù)據(jù),closeAllIcon ,showAllIcon 是對(duì)應(yīng)的方法
data: {
index: 0,
close:0
},
closeAllIcon: function(e){
this.setData({
close:1
})
},
showAllIcon :function(e){
this.setData({
close:0
})
}
};
module.exports=iconList //將接口的進(jìn)行暴露,方便在外面調(diào)用
接下來(lái)封裝好了,就是該怎么使用了。
在需要的WXML頁(yè)面:
通過 引入斤頁(yè)面,再通過
<template is="widget-dialog-iconList" data="{{你要傳到頁(yè)面的數(shù)據(jù)}}"></template>
進(jìn)行使用。
在需要的WXML頁(yè)面:
通過var iconList = require('../wdg/iconList');引入對(duì)應(yīng)的JS
var util= require('../../util/util');
var Page = new util.Page({
Wdgs: [iconList.Wdg]
});
引入對(duì)應(yīng)文件。
感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
相關(guān)文章
rollup打包引發(fā)對(duì)JS模塊循環(huán)引用思考
這篇文章主要為大家介紹了rollup打包引發(fā)的對(duì)JS模塊循環(huán)引用的思考,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-08-08
tree?shaking對(duì)打包體積優(yōu)化及作用
這篇文章主要為大家介紹了tree?shaking對(duì)打包體積優(yōu)化及作用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07
JS前端模擬Excel條件格式實(shí)現(xiàn)數(shù)據(jù)條效果
這篇文章主要為大家介紹了JS前端模擬Excel條件格式實(shí)現(xiàn)數(shù)據(jù)條效果,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02
Qiankun Sentry 監(jiān)控異常上報(bào)無(wú)法自動(dòng)區(qū)分項(xiàng)目解決
這篇文章主要為大家介紹了Qiankun Sentry 監(jiān)控異常上報(bào)無(wú)法自動(dòng)區(qū)分項(xiàng)目解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-11-11

