免费国产欧美国日产_少妇AV一区二区三区无码_蜜桃精品av无码喷奶水小说_jk18禁网站视频_精产国品一二三级产品区别_被夫の上司に犯波多野结衣_78m成人手机免费看_最爽最刺激18禁视频_偷偷色噜狠狠狠狠的777米奇

易優(yōu)GEO 重磅上線 ~ 一站式GEO優(yōu)化工具,讓豆包、文心一言、DeepSeek 在回答中主動(dòng)推薦你的品牌,搶占AI流量入口!  點(diǎn)擊查看

小程序模板網(wǎng)

微信小程序的數(shù)據(jù)綁定與下拉刷新與template模塊使用問題

發(fā)布時(shí)間:2018-04-26 12:14 所屬欄目:小程序開發(fā)教程

前言

最近10幾天都在學(xué)習(xí)小程序的開發(fā),遇到了一些問題和筆記有趣的東西,今天總結(jié)了一下,和大家分享

 

1.小程序中的template模塊使用

在一個(gè)月黑風(fēng)高的夜晚,我突然發(fā)現(xiàn)一個(gè)很有意思的東西,那就是template模塊,它可以將你定義的一個(gè)HTML5模塊包住,然后利用template,在你的小程序任意一個(gè)頁(yè)面使用,這樣極大的減少了程序中的復(fù)制-粘貼,復(fù)制-粘貼(一般用于需要循環(huán)使用的界面)。下面就用我自己的一個(gè)template模塊來(lái)講解下。

 

第一步:創(chuàng)建頁(yè)面

在pages里面創(chuàng)建存儲(chǔ)你template模塊的頁(yè)面,便于其他頁(yè)面對(duì)其的引用

 

  1. "pages/index/index",
  2. "pages/find/find",
  3. "pages/gift/gift",
  4. "pages/activity/activity",
  5. "pages/common/list",//存儲(chǔ)template模塊的頁(yè)面
  6. "pages/white/white"
 

第二步:創(chuàng)建template模塊

template模塊實(shí)例

 

  1. <template name="job_list">
  2. <view class="br"></view>
  3. <navigator url="../white/white" class="page_appmsg"> //點(diǎn)擊跳轉(zhuǎn)
  4. <view class="page">
  5. <view class="page__hd ">
  6. <image class="page__thumb" src="{{image}}" mode="aspectFill"/>
  7. <view class="page__hd_title">
  8. <view class="page__hd_title title">{{title}}</view>
  9. <view class="page__hd_title school">{{school}}</view>
  10. <view class="page__hd_title request">
  11. <text class="page__hd_title pink">{{pink}}</text>
  12. <text class="page__hd_title time">{{time}}</text>
  13. <view class="page__hd_title cool"><i class="iconfont icon-zan1 active"></i>{{cool}}</view>
  14. </view>
  15. </view>
  16. </view>
  17. <view class='page__ft'>
  18. <i class="iconfont icon-jian-copy active"></i>{{page__ft}}}
  19. </view>
  20. </view>
  21. </navigator>
  22. </template>

在你需要重復(fù)使用的html用一個(gè)標(biāo)簽包起來(lái),并給它取個(gè)名字 。  (當(dāng)然了,還有WXSS的編寫,這里因?yàn)椴皇呛苤匾揖筒环懦鰜?lái)了)  完成了這步,你就可以盡情的在你需要這個(gè)模板的頁(yè)面引用這個(gè)模塊了。

第三步:在各個(gè)頁(yè)面引用template模塊

①在你想要引用的界面的WXSS和WXML上引用template的wxml和wxss,

 

  1. @import '../common/list.wxss';
  2. <import src="../common/list.wxml" />

②在你需要的盒子里面添加template標(biāo)簽,你想要引用那個(gè)template模塊,就在is里面填哪個(gè)模塊的名字

 

  1. <template is="job_list" data="{{jobs}}"/>

如果你是在一個(gè)循環(huán)里面引用的template就需要改為data="{{...item}}"如:

 

  1. <block wx:for="{{jobs}}" wx:key="{{index}}">
  2. <template is="job_list" data="{{...item}}"/>
  3. </block>

代碼:

 

  1. <import src="../common/list.wxml" />
  2. <view class="swiper-tab">
  3. <view class="swiper-tab-item {{activeIndex==0?'active':''}}" data-current="0" bindtap="clickTab">活動(dòng)</view>
  4. <view class="swiper-tab-item {{activeIndex==1?'active':''}}" data-current="1" bindtap="clickTab">視頻</view>
  5. <view class="swiper-tab-item {{activeIndex==2?'active':''}}" data-current="2" bindtap="clickTab">直播</view>
  6. </view>
  7. <swiper current='{{activeIndex}}' bindchange="swiperTab">
  8. <swiper-item>
  9. <view class="swiper-item__content">
  10. <block wx:for="{{jobs}}" wx:key="{{index}}">
  11. <template is="job_list" data="{{...item}}"/>
  12. </block>
  13. </view>
  14. </swiper-item>
  15. <swiper-item>
  16. <view class="swiper-item__content">
  17. <block wx:for="{{jobs}}" wx:key="{{index}}">
  18. <template is="job_list" data="{{...item}}"/>
  19. </block>
  20. </view>
  21. </swiper-item>
  22. <swiper-item>
  23. <view class="swiper-item__content">
  24. <block wx:for="{{jobs}}" wx:key="{{index}}">
  25. <template is="job_list" data="{{...item}}"/>
  26. </block>
  27. </view>
  28. </swiper-item>
  29. </swiper>

效果圖:

2.數(shù)據(jù)綁定

又是一個(gè)月黑風(fēng)高的夜晚,我在實(shí)現(xiàn)點(diǎn)亮的功能的時(shí)候,發(fā)現(xiàn)我只點(diǎn)了一個(gè)地方的點(diǎn)贊,整個(gè)頁(yè)面的點(diǎn)贊都亮了起來(lái),這肯定是不行的,用戶明明只對(duì)這一個(gè)感興趣,你怎么能全部點(diǎn)亮呢?于是我開始了思考,發(fā)現(xiàn)我犯了一個(gè)十分愚蠢的問題,那就是沒有給我的數(shù)據(jù)綁定一個(gè)值,這就好像沒有給喊名字一樣:到了飯點(diǎn)你出去大喊一聲:兒子,回家吃飯了!結(jié)果肯定是家家的兒子都回去吃飯了,然而別人家的飯都還沒開始煮呢,你怎么就喊人家回去了呢,你肯定得喊:二狗子,回家吃飯了!別人家的娃才不會(huì)也跟著回家。這和點(diǎn)擊事件是一個(gè)道理的,你必須給你的每項(xiàng)數(shù)據(jù)綁定一個(gè)id,用if語(yǔ)句,將數(shù)組遍歷一遍,將每個(gè)數(shù)據(jù)的ID拿出來(lái)看看,看下你點(diǎn)的這個(gè)數(shù)據(jù)的ID,與數(shù)組中哪個(gè)相符合。如何成功配對(duì)了 ,恭喜,你可以執(zhí)行點(diǎn)亮操作了!  功能實(shí)現(xiàn)如下:

wxml

 

  1. <a wx:if="{{!item.isSelected}}" id="dianzan1" data-id = "{{item.id}}"
  2. bindtap="cool">
  3. <i class="iconfont icon-dianzan1 active"></i>
  4.  
  5. <a wx:if="{{item.isSelected}}" id="dianzan1" data-id = "{{item.id}}"
  6. bindtap="cool">
  7. <i class="iconfont icon-dianzan1-copy active"></i>

在數(shù)據(jù)中,我不僅給了它一個(gè)ID,還給了它一個(gè)布爾值,并且全部定為false,這樣便可以通過  wx:if="{{!item.isSelected}}" wx:if="{{item.isSelected}}" 來(lái)判斷展示的是點(diǎn)亮與否。

js

 

  1. cool:function(e) {
  2. let jobs = this.data.jobs
  3. for(let key in jobs){ // 遍歷一遍數(shù)據(jù)
  4. // console.log(jobs[key].id);
  5. //將界面的數(shù)據(jù)與jobs的數(shù)據(jù)進(jìn)行匹配
  6. if (jobs[key].id === e.currentTarget.
  7.  


本文地址:http://m.szcjxy.com/wxmini/doc/course/24127.html 復(fù)制鏈接 如需定制請(qǐng)聯(lián)系易優(yōu)客服咨詢: 點(diǎn)擊咨詢
在線客服