微信小程序 setData accepts an Object rather than some undefined 解決辦法

問題

setData accepts an Object rather than some undefined

setData接受一個對象而不是一些定義

讓我猜猜, 你必定是在加載index頁面(首頁)時報錯的吧? 並且日了狗的開發工具不報微信調試報javascript

解決

這個問題很扯淡, 其實就是你在app.js中一次性request了一些數據, 暫存到app.globalData中java

再經過如下代碼, 渲染在須要用到這種數據的地方
頁面.jsbash

var app = getApp()

Page({
    data:{
    },

    onLoad: function (options) {
        this.setData(app.globalData.xxx)
    }
})

我估計你是這麼出錯的, 而且這種方法應用在其餘頁面沒問題, 就出如今了首頁.微信

估計是app.js裏request異步訪問的緣由, 直到網頁加載完成了 都還沒獲得數據. 形成了this.setData(null)的現象app

真-解決辦法 (我不bb了)

「`
this.setData(app.globalData.xxx)
放到
onReady事件裏, 就解決了. Ready比Load後執行. 可能會出現打開瞬間沒有數據, 而後填充的現象異步

相關文章
相關標籤/搜索