微信小程序模板(template)使用详解


Posted in Javascript onJanuary 31, 2018

本文为大家分享了微信小程序模板template的使用方法,供大家参考,具体内容如下

效果图

以MUI的实例首页和列表页面为实例

微信小程序模板(template)使用详解

微信小程序模板(template)使用详解

通过上图,可以看出两个页面的列表部分很相近,以每行作为单元制作模板。

template模板

1、模板存放的位置以及使用模板页面存放的位置

微信小程序模板(template)使用详解

template模板的WXML

<!--右侧无箭头 -->
<template name="listNone">
 <view class="tui-menu-list">
 <navigator url="{{item.url}}">
  <block>
  <text>{{item.title}}</text>
  </block>
 </navigator>
 </view>
</template>
<!--右侧有箭头 -->
<template name="list">
 <view class="tui-menu-list tui-youjiantou">
 <navigator url="{{item.url}}">
  <block>
  <text>{{item.title}}</text>
  </block>
 </navigator>
 </view>
</template>

注意:上边在同一个WXML文件内创建了两个模板,一个右侧有箭头,一个右侧无箭头,以name名识别。
template模板的WXSS

.tui-menu-list{
 line-height: 80rpx;
 color: #555;
 font-size: 35rpx;
 padding: 0 0rpx 0 10px;
 position: relative;
}

在index页面使用template模板

WXML

<import src="../../template/list.wxml"/>

<view class="tui-fixed">
 <scroll-view style="height:100%;" scroll-y="true">
 <template wx:for="{{menu}}" is="list" data="{{item}}"></template>
 </scroll-view>
</view>
  • 用import 将模板引入;
  • 使用模板,template 的is 属性和模板中:name 属性对应,表示你要使用的具体模板,data 属性是模板中要使用的数据,注意数据结构要相同;
  • 可以直接循环模板,需要也可以在模板外加一层进行循环。

WXSS

此处将WXSS引入到全局!

@import "./template/list.wxss";
  • 直接使用import 引入列表的WXSS;
  • 此代码可以放在当前页面的WXSS(index.wxss)中,也可以放在全局wxss(app.wxss)中 ;
  • 建议:如果项目需要大量使用一个模板,WXSS引入到全局,减少代码量;如果项目只是很少地方使用模板,可以在需要的页面引入WXSS。

在list页面使用template模板

WXML

<import src="../../template/list.wxml"/>

<view class="tui-list-box">
 <view class="tui-list-head">右侧无箭头</view>
 <template wx:for="{{menu}}" is="listNone" data="{{item}}"></template>
</view>
<view class="tui-list-box">
 <view class="tui-list-head">右侧有箭头</view>
 <template wx:for="{{menu}}" is="list" data="{{item}}"></template>
</view>
<view class="tui-list-box-raduis">
 <view class="tui-list-head">圆角列表</view>
 <template wx:for="{{menu}}" is="list" data="{{item}}"></template>
</view>

总结

  • 在一个项目中需要在多处页面使用类似的模块,就需要创建模板—-减少代码量,同时代码高度复用;
  • 在同一个WXML文件中创建多个类似的模板用name属性来区别;
  • 模板WXSS在全局引入和在使用页面引入的区别在于模板的使用量;
  • 使用 import 引入模板 WXML 和 WXSS ;
  • 通过template 标签使用模板,template 标签的 is 属性与模板的 name 属性对应,data 属性代表传入模板的数据。

DEMO下载

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js操作时间(年-月-日 时-分-秒 星期几)
Jun 20 Javascript
ANT 压缩(去掉空格/注释)JS文件可提高js运行速度
Apr 15 Javascript
浅谈JavaScript实现面向对象中的类
Dec 09 Javascript
探讨JavaScript中的Rest参数和参数默认值
Jul 29 Javascript
基于JavaScript实现多级菜单效果
Jul 25 Javascript
jQuery实现动态添加节点与遍历节点功能示例
Nov 09 jQuery
vue实现在表格里,取每行的id的方法
Mar 09 Javascript
jQuery实现table表格信息的展开和缩小功能示例
Jul 21 jQuery
javascript实现文本框标签验证的实例代码
Oct 14 Javascript
深入学习JavaScript 高阶函数
Jun 11 Javascript
vue中更改数组中属性,在页面中不生效的解决方法
Oct 30 Javascript
CocosCreator入门教程之网络通信
Apr 16 Javascript
浅谈MUI框架中加载外部网页或服务器数据的方法
Jan 31 #Javascript
js保留两位小数方法总结
Jan 31 #Javascript
微信小程序icon组件使用详解
Jan 31 #Javascript
详解Chai.js断言库API中文文档
Jan 31 #Javascript
微信小程序 如何引入外部字体库iconfont的图标
Jan 31 #Javascript
详解Vue单元测试Karma+Mocha学习笔记
Jan 31 #Javascript
Vue单页面应用保证F5强刷不清空数据的解决方案
Jan 31 #Javascript
You might like
使用cookie实现统计访问者登陆次数
2013/06/08 PHP
PHP文件锁定写入实例解析
2014/07/14 PHP
php截取中文字符串函数实例
2015/02/23 PHP
PHP通过加锁实现并发情况下抢码功能
2016/08/10 PHP
Laravel实现ORM带条件搜索分页
2019/10/24 PHP
JQuery 表格操作(交替显示、拖动表格行、选择行等)
2009/07/29 Javascript
web性能优化之javascript性能调优
2012/12/28 Javascript
js获取url参数值的两种方式
2013/09/10 Javascript
JavaScript实现列出数组中最长的连续数
2014/12/29 Javascript
jQuery+jRange实现滑动选取数值范围特效
2015/03/14 Javascript
javascript实现图片自动和可控的轮播切换特效
2015/04/13 Javascript
js获取图片宽高的方法
2015/11/25 Javascript
js实现简单的省市县三级联动效果实例
2016/02/18 Javascript
JavaScript中获取时间的函数集
2016/08/16 Javascript
js控住DOM实现发布微博效果
2016/08/30 Javascript
js每隔两秒输出数组中的一项(实例)
2017/05/28 Javascript
vue页面使用阿里oss上传功能的实例(一)
2017/08/09 Javascript
解决vue select当前value没有更新到vue对象属性的问题
2018/08/30 Javascript
Bootstrap的aria-label和aria-labelledby属性实例详解
2018/11/02 Javascript
JavaScript常用事件介绍
2019/01/21 Javascript
JS 实现发送短信验证码的“59秒后重新发送验证短信”功能
2019/08/23 Javascript
基于JavaScript实现单例模式
2019/10/30 Javascript
Vue实现点击箭头上下移动效果
2020/06/11 Javascript
Javascript实现打鼓效果
2021/01/29 Javascript
[00:32]2018DOTA2亚洲邀请赛出场——LGD
2018/04/04 DOTA
[01:18:31]DOTA2-DPC中国联赛定级赛 LBZS vs Magma BO3第一场 1月10日
2021/03/11 DOTA
python使用logging模块发送邮件代码示例
2018/01/18 Python
Python设计模式之状态模式原理与用法详解
2019/01/15 Python
深入理解css属性的选择对动画性能的影响
2016/04/20 HTML / CSS
高中毕业自我鉴定范文
2013/10/02 职场文书
自荐信需注意事项
2014/01/25 职场文书
领导党性分析材料
2014/02/15 职场文书
美容院店长岗位职责
2014/04/08 职场文书
2014年幼儿园老师工作总结
2014/12/05 职场文书
课外活动总结
2015/02/04 职场文书
python基础学习之生成器与文件系统知识总结
2021/05/25 Python