微信小程序 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后执行. 可能会出现打开瞬间没有数据, 而后填充的现象异步

相关文章
相关标签/搜索