小程序模板網(wǎng)

微信小程序-修改數(shù)據(jù)后頁面不渲染,設(shè)置全局變量,自定義屬性 ...

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

一:修改數(shù)據(jù)后頁面不渲染

分享者:向朔1992,原文地址

說明

去年從小程序一開始出來到現(xiàn)在,我一直是比較看好和保持一定的關(guān)注度的,小程序的掀起的波浪我覺得一開始是在前端及其他技術(shù)開發(fā)人群中的,這是我第一次有意識(shí)的親眼目睹了一個(gè)新技術(shù)的發(fā)展,還是感覺比較榮幸的。 
唱衰小程序?我的觀點(diǎn)是肯定不可能,因?yàn)楝F(xiàn)在每天提交審核的小程序還在繼續(xù)增加,而且有些小程序確實(shí)很好用,比如摩拜的掃碼騎車,還有我上周去KTV,直接用小程序掃屏幕上的二維碼,就可以綁定房間,然后通過小程序點(diǎn)歌,切歌,發(fā)表情包等方便好玩的事情,所以,在我看來,有些應(yīng)用場(chǎng)景是非常適合小程序的,以后生活中的更多場(chǎng)景會(huì)更多的應(yīng)用小程序。

截止到目前,小程序的系列文章寫了有十幾篇,基本上是解決開發(fā)中的一些問題,踩過的坑。我的小程序也已經(jīng)寫的差不多了,但是公司的https加密認(rèn)證還沒有弄好,所以只能暫且擱置在那里了。

數(shù)據(jù)修改不生效

今天繼續(xù)要介紹一個(gè)setData()的問題。 
我們經(jīng)常會(huì)這樣寫:

 

					
  1. var that = this;
  2. wx.getStorage({
  3. key: 'user',
  4. success: function(res){
  5. console.log(res.data)
  6. that.data.params.uuid = res.data.uuid;
  7. that.data.params.ticket = res.data.ticket;
  8. that.data.params.courseUuid = options.courseUuid;
  9. that.data.params.isCompany = options.isCompany;
  10.  
  11. that.fetchData();
  12. that.getShareList();
  13. }
  14. })

我們給data對(duì)象進(jìn)行了一些賦值操作,但是發(fā)現(xiàn)接著使用這些數(shù)據(jù)的時(shí)候是不對(duì)的,我們賦值的數(shù)據(jù)并沒有成功的渲染到頁面。找了好久之后我發(fā)現(xiàn),原來要想數(shù)據(jù)立馬生效,必須要調(diào)用一下setData()方法才能有用,所以上面的代碼修改如下:

 

					
  1. var that = this;
  2. wx.getStorage({
  3. key: 'user',
  4. success: function(res){
  5. console.log(res.data)
  6. that.data.params.uuid = res.data.uuid;
  7. that.data.params.ticket = res.data.ticket;
  8. that.data.params.courseUuid = options.courseUuid;
  9. that.data.params.isCompany = options.isCompany;
  10.  
  11. that.setData({
  12. params: that.data.params
  13. })
  14.  
  15. that.fetchData();
  16. that.getShareList();
  17. }
  18. })

微信小程序的開發(fā)暫告一段落,后面條件滿足了會(huì)上傳審核的,如果有興趣到時(shí)候可以搜索“華企商學(xué)院”來體驗(yàn)。

 

二:設(shè)置全局變量

為了提高程序的可用性我們?cè)谧鲰?xiàng)目的時(shí)候一定要設(shè)置全局變量

微信小程序里面有個(gè)app.js,我們可以在這個(gè)里面設(shè)置全局變量,

 

					
  1. globalData:{
  2. userInfo:null,
  3. username1:"woshihaiyong168"
  4. }

在其他.js中引用

 

					
  1. var testuname = getApp().globalData.username1;
  2. console.log(testuname)

這樣就提高了代碼的可用性?。?!

 

三:自定義屬性

微信小程序 自定義屬性

 

					
  1. <view class='showList ' bindtop='shopPost' data-shopId='item.goods_id' ></view>

js 接值

 

					
  1. shopPost:function(event){ var postId = event.currentTarget.dataset.postid }
 
 
 


易優(yōu)小程序(企業(yè)版)+靈活api+前后代碼開源 碼云倉庫:starfork
本文地址:http://m.u-renovate.com/wxmini/doc/course/23371.html 復(fù)制鏈接 如需定制請(qǐng)聯(lián)系易優(yōu)客服咨詢:800182392 點(diǎn)擊咨詢
QQ在線咨詢
AI智能客服 ×