微信小程序实现给嵌套template模板传递数据的方式总结


Posted in Javascript onDecember 18, 2017

本文实例总结了微信小程序实现给嵌套template模板传递数据的方式。分享给大家供大家参考,具体如下:

一、template模板调用的数据是单一形态时:

indexTemplate模板:

<import src="../lookAndCollect-template/lookAndCollect-template.wxml" />
<template name="indexTemplate">
 <view class="user-info">
  <image class="avatar" src="{{avatar}}"></image>
  <text class="name">{{name}}</text>
  <text class="date">{{date}}</text>
 </view>
 <view class="news">
  <text class="news-title">{{title}}</text>
  <image class="news-img" src="{{newsImg}}"></image>
  <text class="news-content">{{content}}</text>
 </view>
 <template is="reviewAndCollect" data="{{review,look}}"></template>
</template>

lookAndCollect模板:

<template name="lookAndCollect-template">
 <view class="lookAndCollect-template">
  <view class="lookAndCollect-template-review">
   <image src="/smallApp/images/icon/view.png"></image>
   <text>{{look}}</text>
  </view>
  <view class="lookAndCollect-template-look">
   <image src="/smallApp/images/icon/chat.png"></image>
   <text>{{collect}}</text>
  </view>
 </view>
</template>

indexTemplate模板在index.wxml中的引用:

<block wx:for="{{newsData}}" wx:for-item="newsItem">
   <view class="item">
    <template is="indexTemplate" data="{{...newsItem}}" />
   </view>
  </block>

index.wxml对应的index.js写法:

var newsDataList = require("../index-data.js");
Page({
  data: {
  },
  onLoad: function (option) {
    this.setData({
      newsData: newsDataList.dataList
    });
  }
})

模板中使用单一形式的数据:

var news_data = [
  {
    listId: "0",
    avatar: "/smallApp/images/avatar/1.png",
    name: "我是大猫猫",
    date: "16分钟前",
    title: "搞事情?法国招聘新特工 会汉语成必备条件",
    newsImg: "/smallApp/images/post/crab.png",
    content: "是的,你没看错,据法国《费加罗报》报道,法国境外安全总局(DGSE)欲在2019年前招募600名新特工,而且新的特工必须年轻、有高等文凭,会多国语言,并且熟悉电脑与互联网。",
    review: "0",
    look: "30"
  },
  {
    listId: "1",
    avatar: "/smallApp/images/avatar/2.png",
    name: "风口上的猪",
    date: "1天前",
    title: "顺丰控股上市次日盘中涨停 离首富差4个涨停",
    newsImg: "/smallApp/images/post/bl.png",
    content: "根据之前借壳方鼎泰新材发布的公告,该公司定增完成后,第一大股东将变更为深圳明德控股发展有限公司(简称“明德控股”),持股比例为64.58%,后4名分别为宁波顺达丰润投资管理合伙企业(有限合伙)…",
    review: "100",
    look: "380"
  }
];
module.exports = {
  dataList: news_data
}

如果需要在嵌套的模板中传入多个数据,可以将每个数据用逗号隔开。

二、嵌套模板调用包括object对象时的调用方法:

模板中使用的数据review和look以对象的形式呈现时:

var news_data = [
  {
    listId: "0",
    avatar: "/smallApp/images/avatar/1.png",
    name: "我是大猫猫",
    date: "16分钟前",
    title: "搞事情?法国招聘新特工 会汉语成必备条件",
    newsImg: "/smallApp/images/post/crab.png",
    content: "是的,你没看错,据法国《费加罗报》报道,法国境外安全总局(DGSE)欲在2019年前招募600名新特工,而且新的特工必须年轻、有高等文凭,会多国语言,并且熟悉电脑与互联网。",
    reviewAndCollect {
      review: "0",
      look: "30"
    }
  },
  {
    listId: "1",
    avatar: "/smallApp/images/avatar/2.png",
    name: "风口上的猪",
    date: "1天前",
    title: "顺丰控股上市次日盘中涨停 离首富差4个涨停",
    newsImg: "/smallApp/images/post/bl.png",
    content: "根据之前借壳方鼎泰新材发布的公告,该公司定增完成后,第一大股东将变更为深圳明德控股发展有限公司(简称“明德控股”),持股比例为64.58%,后4名分别为宁波顺达丰润投资管理合伙企业(有限合伙)…",
    reviewAndCollect {
      review: "120",
      look: "300"
    }
  }
];
module.exports = {
  dataList: news_data
}

indexTemplate模板

<import src="../lookAndCollect-template/lookAndCollect-template.wxml" />
<template name="indexTemplate">
 <view class="user-info">
  <image class="avatar" src="{{avatar}}"></image>
  <text class="name">{{name}}</text>
  <text class="date">{{date}}</text>
 </view>
 <view class="news">
  <text class="news-title">{{title}}</text>
  <image class="news-img" src="{{newsImg}}"></image>
  <text class="news-content">{{content}}</text>
 </view>
 <template is="reviewAndCollect" data="{{reviewAndCollect}}"></template>
</template>

lookAndCollect模板:

<template name="lookAndCollect-template">
 <view class="lookAndCollect-template">
  <view class="lookAndCollect-template-review">
   <image src="/smallApp/images/icon/view.png"></image>
   <text>{{reviewAndCollect.look}}</text>
  </view>
  <view class="lookAndCollect-template-look">
   <image src="/smallApp/images/icon/chat.png"></image>
   <text>{{reviewAndCollect.collect}}</text>
  </view>
 </view>
</template>

ps: indexTemplate模板在index.wxml中的引用,以及index.wxml对应的index.js的写法,同第一种。

希望本文所述对大家微信小程序开发有所帮助。

Javascript 相关文章推荐
datagrid框架的删除添加与修改
Apr 08 Javascript
js判断运行jsp页面的浏览器类型以及版本示例
Oct 30 Javascript
jQuery中slideUp()方法用法分析
Dec 24 Javascript
纯JavaScript基于notie.js插件实现消息提示特效
Jan 18 Javascript
基于JavaScript实现表单密码的隐藏和显示出来
Mar 02 Javascript
javascript使用 concat 方法对数组进行合并的方法
Sep 08 Javascript
ng-options和ng-checked在表单中的高级运用(推荐)
Jan 21 Javascript
javascript设计模式之单体模式学习笔记
Feb 15 Javascript
jQuery实现可编辑表格并生成json结果(实例代码)
Jul 19 jQuery
傻瓜式vuex语法糖kiss-vuex整理
Dec 21 Javascript
vuejs简单验证码功能完整示例
Jan 08 Javascript
gulp构建小程序的方法步骤
May 31 Javascript
微信小程序实现页面跳转传值以及获取值的方法分析
Dec 18 #Javascript
10个在JavaScript开发中常遇到的BUG
Dec 18 #Javascript
详解webpack与SPA实践之开发环境搭建
Dec 18 #Javascript
javaScript中的空值和假值
Dec 18 #Javascript
浅谈Webpack自动化构建实践指南
Dec 18 #Javascript
微信小程序实现图片上传、删除和预览功能的方法
Dec 18 #Javascript
mockjs,json-server一起搭建前端通用的数据模拟框架教程
Dec 18 #Javascript
You might like
php操作excel文件 基于phpexcel
2010/07/02 PHP
解析CI即CodeIgniter框架在Nginx下的重写规则
2013/06/03 PHP
alixixi runcode.asp的代码不错的应用
2007/08/08 Javascript
面向对象的Javascript之二(接口实现介绍)
2012/01/27 Javascript
JS、CSS加载中的小问题探讨
2013/11/26 Javascript
JQuery实现的购物车功能(可以减少或者添加商品并自动计算价格)
2015/01/13 Javascript
浅谈类似于(function(){}).call()的js语句
2015/03/30 Javascript
jQuery实现的多屏图像图层切换效果实例
2015/05/07 Javascript
javascript中mouseover、mouseout使用详解
2015/07/19 Javascript
js剪切板应用clipboardData实例解析
2016/05/29 Javascript
Bootstrap响应式侧边栏改进版
2016/09/17 Javascript
Bootstrap table学习笔记(2) 前后端分页模糊查询
2017/05/18 Javascript
javaScript日期工具类DateUtils详解
2017/12/08 Javascript
小程序如何构建骨架屏
2019/05/29 Javascript
如何在现代JavaScript中编写异步任务
2021/01/31 Javascript
Python实现windows下模拟按键和鼠标点击的方法
2015/03/13 Python
Python简单定义与使用字典dict的方法示例
2017/07/25 Python
详谈Python3 操作系统与路径 模块(os / os.path / pathlib)
2018/04/26 Python
对pandas中时间窗函数rolling的使用详解
2018/11/28 Python
python爬虫URL重试机制的实现方法(python2.7以及python3.5)
2018/12/18 Python
在linux下实现 python 监控usb设备信号
2019/07/03 Python
详解python定时简单爬取网页新闻存入数据库并发送邮件
2020/11/27 Python
Python 用__new__方法实现单例的操作
2020/12/11 Python
基于CSS3 animation动画属性实现轮播图效果
2017/09/12 HTML / CSS
雅诗兰黛美国官网:Estee Lauder美国
2016/07/21 全球购物
阿玛尼美国官方网站:Armani.com
2016/11/25 全球购物
美国在线纱线商店:Darn Good Yarn
2019/03/20 全球购物
小学生自我评价范例
2013/09/24 职场文书
会计实习自我鉴定
2013/12/04 职场文书
销售演讲稿范文
2014/01/08 职场文书
员工入职担保书范文
2014/04/01 职场文书
校园绿化美化方案
2014/06/08 职场文书
金融与证券专业求职信
2014/06/22 职场文书
大学生党课感想
2015/08/11 职场文书
写一个Python脚本自动爬取Bilibili小视频
2021/04/24 Python
Python 中random 库的详细使用
2021/06/03 Python