微信小程序 循環及嵌套循環的使用總結
關于微信小程序,最近被安排做微信小程序,首次接觸,總體來說上手不是太困難。
對于小程序的循環問題頗有感觸,因為自己綁定數據到界面無數次用到循環和嵌套循環。
對于我們在js中從接口中通過POST或GET請求獲取數據存放到Page中定義的對象中:
//首頁話題列表 wx.request({ url: 'https://*******************', method: 'POST', data: { pageNum: 1, pageSize: 10 }, success:function(res){ that.setData({ listTop:res.data, }) } })
在wxml文件中通過
wx:for="{{listTop}}"
來實現循環輸出對象中的數據,這里我們可以通過{{index }} 獲取下標,也可以自定義下標:
wx:for-index="index2"
當listTop中存在對象com的時候,我們可以通過wx:for="{{item.com}}" 來實現循環該循環中的數據。
我在實際的項目中,遇到這樣一個問題:在嵌套循環的過程中,我需要將某個字段的值進行轉換,比如時間戳換成日期/幾天前等,這個時候我們應該
知道微信小程序不支持界面直接調用JS,這個時候我們應該怎么解決:
起初自己饒了很大一個彎子,我總是想在JS中通過循環放到一個對象中,然后再在界面循環出來,其實前一步我已經接近結果了,但是實際開發中
自己作為剛入職不到一個月的新手還是有很多不足,所以自己陷入到死循環當中。
解決方案:在你遍歷出來的時候,直接把原有的數據替換成想要的數據就行了。。。。(很簡單,但是當局者迷,但是由于自己解決的,可能存在
更好的方法,這里僅作敘述)
for (var i = 0; i < res.data.data.length;i++){ console.log(res.data.data[i].comments+"**********"+i) console.log("***"+i) if (res.data.data[i].comments !=null){ for (var j = 0; j < res.data.data[i].comments.length;j++){ res.data.data[i].comments[j].createTime=transDate(res.data.data[i].comments[j].createTime) } } }
如有疑問請留言或者到本站社區交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
新聞熱點
疑難解答