微信小程序模板(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 相关文章推荐
JavaScript高级程序设计 扩展--关于动态原型
Nov 09 Javascript
JS图片根据鼠标滚动延时加载的实例代码
Jul 13 Javascript
js实现带按钮的上下滚动效果
May 12 Javascript
node.js cookie-parser之parser.js
Jun 06 Javascript
js表单元素checked、radio被选中的几种方法(详解)
Aug 22 Javascript
Angular中的$watch、$watchGroup、$watchCollection
Jun 25 Javascript
ES6顶层对象、global对象实例分析
Jun 14 Javascript
微信小程序缓存支持二次开发封装实现解析
Dec 16 Javascript
一看就会的vuex实现登录验证(附案例)
Jan 09 Javascript
详解javascript中var与ES6规范中let、const区别与用法
Jan 11 Javascript
antd中table展开行默认展示,且不需要前边的加号操作
Nov 02 Javascript
简单谈谈offsetleft、offsetTop和offsetParent
Dec 04 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
第六节 访问属性和方法 [6]
2006/10/09 PHP
Yii2实现中国省市区三级联动实例
2017/02/08 PHP
php批量删除操作(数据访问)
2017/05/23 PHP
javascript当onmousedown、onmouseup、onclick同时应用于同一个标签节点Element
2010/01/05 Javascript
javascript 正则替换 replace(regExp, function)用法
2010/05/22 Javascript
JS拖动技术 关于setCapture使用
2010/12/09 Javascript
js定义对象或数组直接量时各浏览器对多余逗号的处理(json)
2011/03/05 Javascript
Backbone.js中的集合详解
2015/01/14 Javascript
动态加载jQuery的方法
2015/06/16 Javascript
JavaScript控制浏览器全屏及各种浏览器全屏模式的方法、属性和事件
2015/12/20 Javascript
基于jQuery实现文本框只能输入数字(小数、整数)
2016/01/14 Javascript
利用jsonp跨域调用百度js实现搜索框智能提示
2016/08/24 Javascript
jQuery与JS加载事件用法分析
2016/09/04 Javascript
微信小程序实现之手势锁功能实例代码
2018/07/19 Javascript
js实现动态添加上传文件页面
2018/10/22 Javascript
JavaScript使用闭包模仿块级作用域操作示例
2019/01/21 Javascript
this.$toast() 了解一下?
2019/04/18 Javascript
小程序实现分类页
2019/07/12 Javascript
VUE解决 v-html不能触发点击事件的问题
2019/10/28 Javascript
[03:44]2014DOTA2国际邀请赛 71专访:DK战队赛前讨论视频遭泄露
2014/07/13 DOTA
python打开url并按指定块读取网页内容的方法
2015/04/29 Python
Go语言基于Socket编写服务器端与客户端通信的实例
2016/02/19 Python
Scrapy框架爬取Boss直聘网Python职位信息的源码
2019/02/22 Python
Python何时应该使用Lambda函数
2019/07/02 Python
python智联招聘爬虫并导入到excel代码实例
2019/09/09 Python
Python实现RabbitMQ6种消息模型的示例代码
2020/03/30 Python
受希腊女神灵感的晚礼服、鸡尾酒礼服和婚纱:THEIA
2018/04/15 全球购物
澳大利亚领先的武术用品和健身器材供应商:SMAI
2019/03/24 全球购物
第一批党的群众路线教育实践活动工作总结
2014/03/03 职场文书
家长给学校的建议书
2014/05/15 职场文书
社区精神文明建设汇报材料
2014/08/17 职场文书
大学生个人学习总结
2015/02/15 职场文书
煤矿施工安全协议书
2016/03/22 职场文书
浅谈Laravel中使用Slack进行异常通知
2021/05/29 PHP
nginx+lua单机上万并发的实现
2021/05/31 Servers
python获取字符串中的email
2022/03/31 Python