小程序相关专题

wepy在onLoad里修改data-object的值页面不渲染

2018-09-05  本文已影响0人  kangaroo_v
大学路真美啊

wepy的坑真的是千奇百怪啊...

先来看看代码


//html 伪代码
//<text>{{ userInfo.nickName }}</text>



    data = {
      userInfo: null
    }
    onLoad() {
      let that = this
      wx.getUserInfo({
        success:function(res){
          if(res.rawData){
            that.userInfo = JSON.parse(res.rawData)
            that.$apply()
          }
        }
      })
    }
    methods = {
        change(){
          this.userInfo.nickName = '布拉拉'
        }
    }

我们在某个不知名的page页的onLoad钩子里获取了一个数据 并且赋值给userInfo
之后再页面上展示出来..
看上去没毛病是吧 小程序编辑器里也没毛病BUT!!! 还是那句话 wepy的坑真多啊
再真机测试的时候问题出现了
值改变了...页面没更新!! 脏检查也无效!! 这是为什么呢??


挠头

捣鼓了挺久的也没解决出来 之后看看原生怎么改的 发现原生的方法可以

 let user = "userInfo.nickName"
this.setData({
   [user]:'XxX'
})

很迷 用这样的方式就可以刷新页面了...之后再研究一下如何用wepy的方式刷新页面

上一篇下一篇

猜你喜欢

热点阅读