微信小程序开发之--”emplate模板“的应用
第一步:定义模板
①:新建一个template文件夹用来管理项目中所有的模板(本文案例定义文件夹名为:temp);
②、新建一个wxml文件来定义模板(本文案例定义文件夹名为:temp.wxml);
③、使用name属性,作为模板的名字。然后在<template name='模板名称'>代码片段<template/>内定义代码片段。
<!--pages/temp/temp.wxml-->
<template name='list'> <view class='expertStyle'> <image class='expertPhoto' src='{{img}}'></image> <view class='expertInfo'>
<view class='infoTop'>
<view class='topName'>{{name}}</view>
<view class='topType' wx:for="{{expertTitle}}" wx:key="*this">{{item.title}}</view>
</view> <view class='infoMiddle'>{{info}}</view><
<view class='infoBottom'>所在科室: {{keshi}} </view>
<view class='infoBottom'>坐诊时间: {{time}} </view>
</view>
</view> <view class="class_item class_item_end">
{{title}}
</view> </template> <template name='small-title'>
<view class='tips-info'>
<image class='tip-pic' src='../../../../../../images/red.png'></image>
<view class='tip-word'>{{title}}</view>
<view class='more'><navigator url='{{url}}'>更多 ></navigator></view>
</view>
</template>
注意:一个.wxml文件中可以定义多个模板,但是需要通过name来区分(此处定义了list和small-title两个模板);
另外.wxss文件照常写再temp.wxss中即可。之后可直接引用。
第二步:使用模板
注意:data 是要模板渲染的数据,data="{{...item}}" 写法是ES6的写法,item是wx:for当前项,... 是展开运算符,在模板中不需要再{{item.courseName}} 而是直接{{courseName}} 。
wxss页面只需直接引用模板里写好的样式即可,js文件此处不予讲述,毕竟模板相同,但每个页面的数据不同,故此处不引用。
@import "../../../../../temp/temp.wxss"
此处附上本文案例所引用的js数据的大体结构
data: {
jianjie: "文本信息",
expertList: [
{
"doctorInfo": "url地址", "img": "图片地址", "name": "文本", "keshi": "文本", "time": "文本", "info": "文本", "expertTitle": [
{ "title": "文本1" },
{ "title": "文本2" },
{ "title": "文本3" }
]
},
{
"doctorInfo": "url地址", "img": "图片地址", "name": "文本", "keshi": "文本", "time": "文本", "info": "文本", "expertTitle": [
{ "title": "文本1" },
{ "title": "文本2" },
{ "title": "文本3" }
]
},
{
"doctorInfo": "url地址", "img": "图片地址", "name": "文本", "keshi": "文本", "time": "文本", "info": "文本", "expertTitle": [
{ "title": "文本1" },
{ "title": "文本2" },
{ "title": "文本3" }
]
},
],
smallTitle: [
{ "title": '文本', "url": 'url地址' },
{ "title": '文本', "url": 'url地址' }
],
},
此处js数据中在expertList数组中嵌套了第二个数组expertTitle,“..."展开符只能展开一层,故expertTitle中的子属性title用item.title来引用。
<view class='topType' wx:for="{{expertTitle}}" wx:key="*this">{{item.title}}</view>
另一处区别的是
<template is='small-title' data='{{ ...smallTitle[0] }}'/>
此处引用模板给予数组下标来应用对应信息。
<navigator wx:for="{{expertList}}" wx:key="*this" url='{{item.doctorInfo}}'>
<template is="list" data='{{...item}}'/>
</navigator>
此处item是wx:for当前项,故无需给予下标。
以上为笔者全部内容,若有不对之处,欢迎指正。
版权声明:本文为博主原创文章,欢迎转载和发表评论,转载请注明出处:http://www.cnblogs.com/leijue/p/8638442.html
微信小程序开发之--”emplate模板“的应用的更多相关文章
- 微信小程序开发之模板
一.简介 WXML提供模板(template),可以在模板中定义代码片段,然后在不同的地方调用. 定义模板 使用name属性,作为模板的名字.然后在<template/>内定义代码片段,如 ...
- 微信小程序开发之模板消息
一.添加模板 登录https://mp.weixin.qq.com获取模板,如果没有合适的模板,可以申请添加新模板,审核通过后可使用,详见模板审核说明 页面的 <form/> 组件,属性r ...
- 微信小程序开发:学习笔记[2]——WXML模板
微信小程序开发:学习笔记[2]——WXML模板 快速开始 介绍 WXML 全称是 WeiXin Markup Language,是小程序框架设计的一套标签语言,结合小程序的基础组件.事件系统,可以构建 ...
- 微信小程序开发工具测评
1月9日微信小程序正式上线.很多企业都希望能在这个.但是在技术开发的问题上,却不知道该如何下手.经过一些程序员不辞辛苦连夜测试,终于从十余款工具呕心沥血筛选出四款比较靠谱实用的微信小程序开发工具.接下 ...
- 微信小程序开发详解——小程序,大颠覆!
微信小程序开发 联系 苏念 188.1414.7927 微信小程序系统开发 微信新功能开发 小程序开发 小程序怎么开发 app小程序开发 简化小程序开发 微信小程序定制 小程序制作 开发微信小程序 ...
- 微信小程序开发教程目录
本系列教程是自己在工作中使用到而记录的,没有顺序之分 如有错误之处,请给与指正,也不希望误导了别人 微信小程序开发教程目录 微信小程序之注册和入门 微信小程序之HTTPS请求 微信小程序开发之选项卡 ...
- 微信小程序开发库grace vs wepy
grace和wepy都是辅助小程序开发的开源库,本文对两者做个对比. 注:本文是作者本人的一些拙见,纯粹的技术讨论,不想引起技术信仰之争,欢迎积极.正向的讨论及建议. 如果你还不了解Grace, 请参 ...
- 微信小程序开发03-这是一个组件
编写组件 基本结构 接上文:微信小程序开发02-小程序基本介绍 我们今天先来实现这个弹出层: 之前这个组件是一个容器类组件,弹出层可设置载入的html结构,然后再设置各种事件即可,这种组件有一个特点: ...
- 微信小程序开发基础
前言: 微信小程序开入入门,如果你有html+css+javascript的基础,那么你就很快地上手掌握的.下面提供微信小程序官方地址:https://developers.weixin.qq.com ...
随机推荐
- 情景linux—不曾了解的cat用法
情景 cat是linux命令中最为基础的命令之一,它是"concatenate"(连接)的简写,作用概述是concatenate and print files,即:连接和查看文件 ...
- 云计算基础 (redhat7介绍及相关配置)
redhat7简介 新版本的rhel7不再对32位架构的支持 引导程序: GRUB2,比之前的GRUB更强大,GRUB2支持bios,efi和openfiremware GRUB2支持mbr分区表和g ...
- file和file文件流
**io流是程序中比较常用的功能,基本上涉及到文件上传下载的都要用到这功能,比如上传头像,上传附件等等. 对于一个java程序员来说,io流也是必须掌握的,因此这里对比较常用的或者说曾经用过的方法进行 ...
- 手把手教你在Windows环境下升级R
在Windows环境下,我们可以使用installr包自动将R升级到最新版本.并且可以安装软件.下面主要演示如何在Windows环境下升级R,并将旧版本安装的R包复制到更新版本的R. 1.加载inst ...
- R语言︱词典型情感分析文本操作技巧汇总(打标签、词典与数据匹配等)
每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 笔者寄语:情感分析中对文本处理的数据的小技巧要 ...
- 【linux】 vsftpd自动
开机默认VSFTP服务自动启动: 方法一-常用方便的方法 [root@localhost /]# chkconfig --list|grep vsftpd vsftpd 0:off ...
- Linux查看用于终止进程命令
Linux查看用于终止进程命令 youhaidong@youhaidong-ThinkPad-Edge-E545:~$ ps PID TTY TIME CMD 2576 pts/0 00:00:00 ...
- web开发性能优化---安全篇
1.权限管理 从模块.表单.数据审核.功能按钮全面数据安全验证及管理. 2.ip验证 数据接口访问进行IP校验 3.登录.操作日志.程序安全日志 系统所有用户登录.操作全部日志记录. 程序安全日志操 ...
- jquery中ajax序列化提交form表单的几种方法。
一,ajax主流的方法 $.ajax({ type: 'post', url: 'your url', data: $("form").serialize(), success: ...
- Eclipse远程debug服务器
一,找端口号 二,Eclipse配置 三,测试是否成功 四,结束远程debug