全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

微信小程序 Template详解及简单实例

微信小程序 Template

模板

WXML提供模板(Template),可以在模板中定义代码片段,然后在不同的地方使用。可以保证格式以及数据的相同。

1-定义模板

使用`<template name="tempName"></template>`标签定义模板,并将模板名称命名为tempName,赋值给属性name。在标签内部,定义模板结构。如下:

<!-- template.wxml -->
<!-- 
  index: int
  msg: string
  time: string
-->
<template name="msgItem">
  <view>
  <text> {{index}}: {{msg}} </text>
  <text> Time: {{time}} </text>
 </view>
</template>

2-使用模板

使用<template is="tempName" />标签,在需要使用模板的地方。如果要用到js文件中的数据,则需要添加data属性。如下:

<!-- template.wxml -->

<template is="msgItem" data="{{...item}}"/>
<template is="msgItem" data="{{...item}}"/>
<template is="msgItem" data="{{...item}}"/>
此时在页面上就会重复显示三次相同的信息。
data中的数据,来源于js文件,如下:

<!-- template.js -->
Page({
 data: {
  item: {
   index: 0,
   msg: 'this is a template',
   time: '2016-09-15'
  }
 }
})

3-is属性

is属性不仅可以静态的指向渲染的模板,也可以使用Mustache语法,来动态决定具体需要渲染哪个模板。如下:

<!-- template.wxml -->

// templates
<template name="odd">
  <view> odd </view>
</template>
<template name="odd">
  <view> even </view>
</template>

// is属性使用Mustache语法动态渲染template
<block wx:for="{{[1, 2, 3, 4,5]}}">
  <template is="{{item % 2 == 0 ? 'even' : 'odd'}}" />
</block>

如上代码,则会在页面中根据条件来显示odd 或是 even

4-模板的引用

如上都是在同一个wxml文件中定义和引用模板,而模板的定义和引用是可以分开的。即在一个文件中定义模板,而在其他一个或多个文件wxml文件中都可以使用定义好的模板。
从外部文件中引用模板,使用import src="templateUrl" />标签。同样使用is属性来指向要引用的标签。
如目录如下:

-pages
  |--index
    |--index.js
    |--index.json
    |--index.wxml
    |--index.wxss
  |--template
    |--template.js
    |--template.json
    |--template.wxml
    |--template.wxss

要在index.wxml中使用template中定义的模板,则需要先在index中利用import来导入该模板:

<!-- index.wxml -->
<import src="../template/template.wxml"
<template is="msgItem" data={{...indexData}}
// 使用的是自己js文件中的数据

要注意import作用域,其仅仅引用目标文件中template。如:C import B,B import A,在C中可以使用B定义的template,在B中可以使用A定义的template,但是C不能使用A定义的template。

参考

微信小程序文档-框架-视图层-WXML-模板

微信小程序文档-框架-视图层-WXML-引用

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


# 微信小程序  # Template  # Template详解  # Template实例  # 微信小程序 template模板详解及实例  # 微信小程序 template模板详解及实例代码  # 微信小程序视图template模板引用的实例详解  # 微信小程序template模板实例详解  # 微信小程序-详解微信登陆、微信支付、模板消息  # 微信小程序 跳转传递数据的实例  # 微信小程序使用navigateTo数据传递的实例  # 微信小程序 页面跳转和数据传递实例详解  # 微信小程序实现给嵌套template模板传递数据的方式总结  # 可以使用  # 则需  # 的是  # 都是  # 就会  # 文档  # 多个  # 而在  # 要在  # 要注意  # 希望能  # 并将  # 要用  # 要先  # 谢谢大家  # 中都  # 命名为  # 则会  # 即在  # 在同一个 


相关文章: 西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?  手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?  如何在IIS7中新建站点?详细步骤解析  简易网站制作视频教程,使用记事本编写一个简单的网页html文件?  建站之星五站合一营销型网站搭建攻略,流量入口全覆盖优化指南  如何挑选最适合建站的高性能VPS主机?  网站网页制作电话怎么打,怎样安装和使用钉钉软件免费打电话?  免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?  如何快速搭建高效简练网站?  linux top下的 minerd 木马清除方法  香港服务器如何优化才能显著提升网站加载速度?  邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?  如何在宝塔面板中修改默认建站目录?  Swift开发中switch语句值绑定模式  怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?  网站制作哪家好,cc、.co、.cm哪个域名更适合做网站?  rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted  网站制作公司广州有几家,广州尚艺美发学校网站是多少?  建站三合一如何选?哪家性价比更高?  制作国外网站的软件,国外有哪些比较优质的网站推荐?  如何用花生壳三步快速搭建专属网站?  nginx修改上传文件大小限制的方法  表情包在线制作网站免费,表情包怎么弄?  网站制作服务平台,有什么网站可以发布本地服务信息?  如何在云服务器上快速搭建个人网站?  无锡制作网站公司有哪些,无锡优八网络科技有限公司介绍?  制作销售网站教学视频,销售网站有哪些?  香港服务器部署网站为何提示未备案?  如何在阿里云高效完成企业建站全流程?  python的本地网站制作,如何创建本地站点?  如何用搬瓦工VPS快速搭建个人网站?  制作无缝贴图网站有哪些,3dmax无缝贴图怎么调?  弹幕视频网站制作教程下载,弹幕视频网站是什么意思?  网站企业制作流程,用什么语言做企业网站比较好?  SAX解析器是什么,它与DOM在处理大型XML文件时有何不同?  建站主机如何安装配置?新手必看操作指南  长沙企业网站制作哪家好,长沙水业集团官方网站?  建站之星好吗?新手能否轻松上手建站?  网站制作与设计教程,如何制作一个企业网站,建设网站的基本步骤有哪些?  车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?  天津个人网站制作公司,天津网约车驾驶员从业资格证官网?  如何访问已购建站主机并解决登录问题?  如何获取上海专业网站定制建站电话?  济南网站建设制作公司,室内设计网站一般都有哪些功能?  我的世界制作壁纸网站下载,手机怎么换我的世界壁纸?  如何通过智能用户系统一键生成高效建站方案?  公司网站的制作公司,企业网站制作基本流程有哪些?  建站与域名管理如何高效结合?  海南网站制作公司有哪些,海口网是哪家的?  定制建站价位费用解析与套餐推荐全攻略 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。