微信小程序 自己制作小组件实例详解


Posted in Javascript onDecember 22, 2016

微信小程序 制作小组件

对于我们日常中一些公共的东西可以封装成组件,然后在各个页面使用。对于小程序,我们也可以封装我们需要的一些公共的东西。

这里我们讲解一个小插件。

微信小程序 自己制作小组件实例详解

微信小程序 自己制作小组件实例详解

如上图所示,一个小插件,单击是展开,在单击关闭的时候,按钮关闭。

页面的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">首页</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>标签里面就可以了。

页面的JS (APP.js)

var iconList = {};    //设置一个对象名字存放数据
iconList.Wdg= {
      //存放要给VIEW层的页面数据,closeAllIcon ,showAllIcon 是对应的方法  
  data: {        
    index: 0,
    close:0
  },
  closeAllIcon: function(e){
      this.setData({
        close:1
      })
  },
  showAllIcon :function(e){
      this.setData({
        close:0
      })
  }
};

module.exports=iconList  //将接口的进行暴露,方便在外面调用

接下来封装好了,就是该怎么使用了。

在需要的WXML页面:

通过 引入斤页面,再通过

<template is="widget-dialog-iconList" data="{{你要传到页面的数据}}"></template>

进行使用。

在需要的WXML页面:

通过var iconList = require('../wdg/iconList');引入对应的JS

var util= require('../../util/util');
var Page = new util.Page({
  Wdgs: [iconList.Wdg]
});

引入对应文件。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
理解Javascript闭包
Nov 01 Javascript
JS批量操作CSS属性详细解析
Dec 16 Javascript
javascript跨域的4种方法和原理详解
Apr 08 Javascript
jQuery中first()方法用法实例
Jan 06 Javascript
jQuery常用且重要方法汇总
Jul 13 Javascript
JavaScript中输出信息的方法(信息确认框-提示输入框-文档流输出)
Jun 12 Javascript
js+css3制作时钟特效
Oct 16 Javascript
JS中使用new Option()实现时间联动效果
Dec 10 Javascript
vue中$nextTick的用法讲解
Jan 17 Javascript
Electron整合React使用搭建开发环境的步骤详解
Jun 07 Javascript
微信小程序实现多图上传
Jun 19 Javascript
vue报错function () { [native code] },无法出现我们想要的内容 Unknown custom element
Apr 11 Vue.js
JS正则子匹配实例分析
Dec 22 #Javascript
JS定时检测任务任务完成后执行下一步的解决办法
Dec 22 #Javascript
jQuery无缝轮播图代码
Dec 22 #Javascript
jQuery实现两列等高并自适应高度
Dec 22 #Javascript
JS常用加密编码与算法实例总结
Dec 22 #Javascript
Javascript 制作图形验证码实例详解
Dec 22 #Javascript
jquery中用函数来设置css样式
Dec 22 #Javascript
You might like
中东人咖啡哲学
2021/03/03 咖啡文化
php中base64_decode与base64_encode加密解密函数实例
2014/11/24 PHP
php算法实例分享
2015/07/14 PHP
Yii针对添加行的增删改查操作示例
2016/10/18 PHP
PHP 实现页面静态化的几种方法
2017/07/23 PHP
PHP实现数组转JSon和JSon转数组的方法示例
2018/06/14 PHP
Laravel 解决composer相关操作提示php相关异常的问题
2019/10/23 PHP
js 获取服务器控件值的代码
2010/03/05 Javascript
JQuery中的$.getJSON 使用说明
2011/03/10 Javascript
jQuery中json对象的复制方式介绍(数组及对象)
2013/06/08 Javascript
javascript教程之不完整的继承(js原型链)
2014/01/13 Javascript
jQuery实现拖拽效果插件的方法
2015/03/23 Javascript
jQuery实现选中弹出窗口选择框内容后赋值给文本框的方法
2015/11/23 Javascript
js调用父框架函数与弹窗调用父页面函数的简单方法
2016/11/01 Javascript
用vue封装插件并发布到npm的方法步骤
2017/10/18 Javascript
JS基于对象的链表实现与使用方法示例
2019/01/31 Javascript
vue中实现Monaco Editor自定义提示功能
2019/07/05 Javascript
Layui table field初始化加载时进行隐藏的方法
2019/09/19 Javascript
vue 使用 v-model 双向绑定父子组件的值遇见的问题及解决方案
2021/03/01 Vue.js
[02:47]DOTA2亚洲邀请赛 HR战队出场宣传片
2015/02/07 DOTA
[01:02:00]DOTA2-DPC中国联赛 正赛 Elephant vs IG BO3 第三场 1月24日
2021/03/11 DOTA
python cookielib 登录人人网的实现代码
2012/12/19 Python
selenium使用chrome浏览器测试(附chromedriver与chrome的对应关系表)
2018/11/29 Python
Flask框架请求钩子与request请求对象用法实例分析
2019/11/07 Python
flask框架自定义url转换器操作详解
2020/01/25 Python
Python sklearn中的.fit与.predict的用法说明
2020/06/28 Python
详解用python -m http.server搭一个简易的本地局域网
2020/09/24 Python
使用CSS禁止textarea调整大小功能的方法
2015/03/13 HTML / CSS
深深扎根运动世界的生活品牌:Tillys
2017/10/30 全球购物
墨西哥皇宫度假村预订:Palace Resorts
2018/06/16 全球购物
承诺书模板大全
2015/05/04 职场文书
青年志愿者服务活动总结
2015/05/06 职场文书
保留意见审计报告
2015/06/05 职场文书
2015年音乐教研组工作总结
2015/07/22 职场文书
浅析Python实现DFA算法
2021/06/26 Python
升级 Win11 还是坚守 Win10?微软 Win11 新系统缺失功能大盘点
2022/04/05 数码科技