微信小程序 template模板详解

如下图,我在做华企商学院小程序的时候,课程搜索结果页和课程列表页结构是完全一样的,这时就非常适合使用模板来完成页面搭建。实现一次定义,到处使用。
模板
一、定义模板
1、新建一个template文件夹用来管理项目中所有的模板;
2、新建一个courseList.wxml文件来定义模板;
3、使用name属性,作为模板的名字。然后在<template/>内定义代码片段。
注意:
a.可以看到一个.wxml文件中可以定义多个模板,只需要通过name来区分;
b.模板中的数据都是展开之后的属性。
<template name="courseLeft">
<navigator url="../play/play?courseUuid={{courseUuid}}&isCompany={{isCompany}}">
<view class="item mr26">
<image src="{{imagePath}}" mode="aspectFill"></image>
<view class="course-title">
<text class="title">{{courseName}}</text>
<text class="author">- {{teacherName}}</text>
</view>
<view class="course-info clearfix">
<view class="fl"><text class="play">{{playCount}}</text></view>
<view class="fr"><text class="grade">{{score}}</text></view>
</view>
<view wx:if="{{studyProgress}}" class="tip-completed">{{studyProgress}}</view>
</view>
</navigator>
</template>
<template name="courseRight">
<navigator url="../play/play?courseUuid={{courseUuid}}&isCompany={{isCompany}}">
<view class="item">
<image src="{{imagePath}}" mode="aspectFill"></image>
<view class="course-title">
<text class="title">{{courseName}}</text>
<text class="author">- {{teacherName}}</text>
</view>
<view class="course-info clearfix">
<text class="play fl">{{playCount}}</text>
<text class="grade fr">{{score}}</text>
</view>
<view wx:if="{{studyProgress}}" class="tip-completed">{{studyProgress}}</view>
</view>
</navigator>
</template>
二、使用模板
1、使用 is 属性,声明需要的使用的模板
<import src="../../templates/courseList.wxml"/>
2、将模板所需要的 data 传入,一般我们都会使用列表渲染。
<block wx:for="{{courseList}}">
<template is="{{index%2 === 0 ? 'courseLeft' : 'courseRight'}}" data="{{...item}}"></template>
</block>
注意:
a.可以通过表达式来确定使用哪个模板is="{{index%2 === 0 ? 'courseLeft' : 'courseRight'}}"
或者通过wx:if来确定。index是数组当前项的下标。
<template wx:if="{{index%2 === 0}}" is="courseLeft" data="{{...item}}"></template>
<template wx:else is="courseRight" data="{{...item}}"></template>
b. data 是要模板渲染的数据,data="{{...item}}" 写法是ES6的写法,item是wx:for当前项,... 是展开运算符,在模板中不需要再{{item.courseName}} 而是直接{{courseName}} 。
三、模板样式
1、在新建模板的时候同时新建一个courseList.wxss 的文件,与CSS同样的写法控制样式。
2、在需要使用模板的页面 .wxss文件中import进来;或者直接在app.wxss中引入,这样只需要一次引入,其他文件就不用引入了。
@import url("../template/courseList.wxss");
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
# 微信小程序
# template模板详解
# 小程序
# template
# template使用方法
# 微信小程序template模板与component组件的区别和使用详解
# 微信小程序template模版的使用方法
# 微信小程序模板(template)使用详解
# 微信小程序实现给嵌套template模板传递数据的方式总结
# 微信小程序视图template模板引用的实例详解
# 详解微信小程序 template添加绑定事件
# 微信小程序 template模板详解及实例
# 微信小程序template模板引入的问题小结
# 新建一个
# 只需要
# 都是
# 我在
# 多个
# 可以通过
# 希望能
# 可以看到
# 搜索结果
# 不需
# 谢谢大家
# 所需要
# 来完成
# 要再
# 如下图
# 运算符
# 华企
# 引入了
# play
# image
相关文章:
网站专业制作公司有哪些,做一个公司网站要多少钱?
北京营销型网站制作公司,可以用python做一个营销推广网站吗?
php json中文编码为null的解决办法
内网网站制作软件,内网的网站如何发布到外网?
Java解压缩zip - 解压缩多个文件或文件夹实例
制作网站的网址是什么,请问后缀为.com和.com.cn还有.cn的这三种网站是分别是什么类型的网站?
测试制作网站有哪些,测试性取向的权威测试或者网站?
C++中引用和指针有什么区别?(代码说明)
如何在Windows服务器上快速搭建网站?
如何通过西部建站助手安装IIS服务器?
如何自定义建站之星模板颜色并下载新样式?
山东网站制作公司有哪些,山东大源集团官网?
新网站制作渠道有哪些,跪求一个无线渠道比较强的小说网站,我要发表小说?
如何撰写建站申请书?关键要点有哪些?
极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?
香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南
如何在IIS中新建站点并配置端口与物理路径?
家庭服务器如何搭建个人网站?
宝塔建站助手安装配置与建站模板使用全流程解析
微信推文制作网站有哪些,怎么做微信推文,急?
如何生成腾讯云建站专用兑换码?
一键制作网站软件下载安装,一键自动采集网页文档制作步骤?
大连网站设计制作招聘信息,大连投诉网站有哪些?
建站主机如何选?性能与价格怎样平衡?
小视频制作网站有哪些,有什么看国内小视频的网站,求推荐?
浅谈Javascript中的Label语句
高防服务器租用如何选择配置与防御等级?
学校建站服务器如何选型才能满足性能需求?
建站VPS配置与SEO优化指南:关键词排名提升策略
如何在沈阳梯子盘古建站优化SEO排名与功能模块?
矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?
如何选择可靠的免备案建站服务器?
独立制作一个网站多少钱,建立网站需要花多少钱?
青浦网站制作公司有哪些,苹果官网发货地是哪里?
佛山企业网站制作公司有哪些,沟通100网上服务官网?
购物网站制作公司有哪些,哪个购物网站比较好?
如何在服务器上配置二级域名建站?
大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?
广州网站设计制作一条龙,广州巨网网络科技有限公司是干什么的?
在线制作视频的网站有哪些,电脑如何制作视频短片?
电商网站制作价格怎么算,网上拍卖流程以及规则?
如何通过智能用户系统一键生成高效建站方案?
如何访问已购建站主机并解决登录问题?
网站制作哪家好,cc、.co、.cm哪个域名更适合做网站?
攀枝花网站建设,攀枝花营业执照网上怎么年审?
如何在宝塔面板中修改默认建站目录?
如何选择适配移动端的WAP自助建站平台?
如何在局域网内绑定自建网站域名?
如何快速搭建高效简练网站?
外汇网站制作流程,如何在工商银行网站上做外汇买卖?
*请认真填写需求信息,我们会在24小时内与您取得联系。