溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

微信小程序如何實(shí)現(xiàn)給嵌套template模板傳遞數(shù)據(jù)的方式有哪些

發(fā)布時(shí)間:2021-06-29 15:35:26 來(lái)源:億速云 閱讀:223 作者:小新 欄目:web開(kāi)發(fā)

小編給大家分享一下微信小程序如何實(shí)現(xiàn)給嵌套template模板傳遞數(shù)據(jù)的方式有哪些,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

一、template模板調(diào)用的數(shù)據(jù)是單一形態(tài)時(shí):

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對(duì)應(yīng)的index.js寫(xiě)法:

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

模板中使用單一形式的數(shù)據(jù):

var news_data = [
  {
    listId: "0",
    avatar: "/smallApp/images/avatar/1.png",
    name: "我是大貓貓",
    date: "16分鐘前",
    title: "搞事情?法國(guó)招聘新特工 會(huì)漢語(yǔ)成必備條件",
    newsImg: "/smallApp/images/post/crab.png",
    content: "是的,你沒(méi)看錯(cuò),據(jù)法國(guó)《費(fèi)加羅報(bào)》報(bào)道,法國(guó)境外安全總局(DGSE)欲在2019年前招募600名新特工,而且新的特工必須年輕、有高等文憑,會(huì)多國(guó)語(yǔ)言,并且熟悉電腦與互聯(lián)網(wǎng)。",
    review: "0",
    look: "30"
  },
  {
    listId: "1",
    avatar: "/smallApp/images/avatar/2.png",
    name: "風(fēng)口上的豬",
    date: "1天前",
    title: "順豐控股上市次日盤(pán)中漲停 離首富差4個(gè)漲停",
    newsImg: "/smallApp/images/post/bl.png",
    content: "根據(jù)之前借殼方鼎泰新材發(fā)布的公告,該公司定增完成后,第一大股東將變更為深圳明德控股發(fā)展有限公司(簡(jiǎn)稱(chēng)“明德控股”),持股比例為64.58%,后4名分別為寧波順達(dá)豐潤(rùn)投資管理合伙企業(yè)(有限合伙)…",
    review: "100",
    look: "380"
  }
];
module.exports = {
  dataList: news_data
}

如果需要在嵌套的模板中傳入多個(gè)數(shù)據(jù),可以將每個(gè)數(shù)據(jù)用逗號(hào)隔開(kāi)。

二、嵌套模板調(diào)用包括object對(duì)象時(shí)的調(diào)用方法:

模板中使用的數(shù)據(jù)review和look以對(duì)象的形式呈現(xiàn)時(shí):

var news_data = [
  {
    listId: "0",
    avatar: "/smallApp/images/avatar/1.png",
    name: "我是大貓貓",
    date: "16分鐘前",
    title: "搞事情?法國(guó)招聘新特工 會(huì)漢語(yǔ)成必備條件",
    newsImg: "/smallApp/images/post/crab.png",
    content: "是的,你沒(méi)看錯(cuò),據(jù)法國(guó)《費(fèi)加羅報(bào)》報(bào)道,法國(guó)境外安全總局(DGSE)欲在2019年前招募600名新特工,而且新的特工必須年輕、有高等文憑,會(huì)多國(guó)語(yǔ)言,并且熟悉電腦與互聯(lián)網(wǎng)。",
    reviewAndCollect {
      review: "0",
      look: "30"
    }
  },
  {
    listId: "1",
    avatar: "/smallApp/images/avatar/2.png",
    name: "風(fēng)口上的豬",
    date: "1天前",
    title: "順豐控股上市次日盤(pán)中漲停 離首富差4個(gè)漲停",
    newsImg: "/smallApp/images/post/bl.png",
    content: "根據(jù)之前借殼方鼎泰新材發(fā)布的公告,該公司定增完成后,第一大股東將變更為深圳明德控股發(fā)展有限公司(簡(jiǎn)稱(chēng)“明德控股”),持股比例為64.58%,后4名分別為寧波順達(dá)豐潤(rùn)投資管理合伙企業(yè)(有限合伙)…",
    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對(duì)應(yīng)的index.js的寫(xiě)法,同第一種。

以上是“微信小程序如何實(shí)現(xiàn)給嵌套template模板傳遞數(shù)據(jù)的方式有哪些”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI