微信小程式-修改資料後頁面不渲染
阿新 • • 發佈:2019-01-30
說明
去年從小程式一開始出來到現在,我一直是比較看好和保持一定的關注度的,小程式的掀起的波浪我覺得一開始是在前端及其他技術開發人群中的,這是我第一次有意識的親眼目睹了一個新技術的發展,還是感覺比較榮幸的。
唱衰小程式?我的觀點是肯定不可能,因為現在每天提交稽核的小程式還在繼續增加,而且有些小程式確實很好用,比如摩拜的掃碼騎車,還有我上週去KTV,直接用小程式掃螢幕上的二維碼,就可以繫結房間,然後通過小程式點歌,切歌,發表情包等方便好玩的事情,所以,在我看來,有些應用場景是非常適合小程式的,以後生活中的更多場景會更多的應用小程式。
截止到目前,小程式的系列文章寫了有十幾篇,基本上是解決開發中的一些問題,踩過的坑。我的小程式也已經寫的差不多了,但是公司的https加密認證還沒有弄好,所以只能暫且擱置在那裡了。
資料修改不生效
今天繼續要介紹一個setData()的問題。
我們經常會這樣寫:
var that = this;
wx.getStorage({
key: 'user',
success: function(res){
console.log(res.data)
that.data.params.uuid = res.data.uuid;
that.data.params.ticket = res.data.ticket;
that.data.params.courseUuid = options.courseUuid;
that. data.params.isCompany = options.isCompany;
that.fetchData();
that.getShareList();
}
})
我們給data物件進行了一些賦值操作,但是發現接著使用這些資料的時候是不對的,我們賦值的資料並沒有成功的渲染到頁面。找了好久之後我發現,原來要想資料立馬生效,必須要呼叫一下setData()方法才能有用,所以上面的程式碼修改如下:
var that = this;
wx.getStorage({
key: 'user',
success: function(res){
console. log(res.data)
that.data.params.uuid = res.data.uuid;
that.data.params.ticket = res.data.ticket;
that.data.params.courseUuid = options.courseUuid;
that.data.params.isCompany = options.isCompany;
that.setData({
params: that.data.params
})
that.fetchData();
that.getShareList();
}
})
微信小程式的開發暫告一段落,後面條件滿足了會上傳稽核的,如果有興趣到時候可以搜尋“華企商學院”來體驗。