微信小程序实现给嵌套template模板传递数据的方式总结
程序员文章站
2022-04-03 17:05:40
本文实例总结了微信小程序实现给嵌套template模板传递数据的方式。分享给大家供大家参考,具体如下:
一、template模板调用的数据是单一形态时:
indexte...
本文实例总结了微信小程序实现给嵌套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的写法,同第一种。
希望本文所述对大家微信小程序开发有所帮助。