关于data问题?

发布于 7 年前作者 daitao17909 次浏览最后编辑 7 年前来自 ask

我想根据是否绑定手机号来在B页面显示不同的内容。

B页面:

data: {

    isBindPhone: app.globalData.userInfoAll.phone ? true : false,

 },

A页面:

用户在A页面绑定完成后更改app.globalData.userInfoAll.phone = true,

但是切换到B页面isBindPhone值并没有改变


B页面是在tabBar页

3 回复
fhuang
fhuang1 楼6 年前

app中的变量可以进行全局的修改和使用。应该是使用上有问题,可能存在异步代码。请检查。

vqian
vqian2 楼6 年前

现在想这样做

绑定后直接重新启动应用

wx.reLaunch({

  url: ‘/pages/index/index’

})

B页面使用onShow(),

这样每次切换都查询到app.globalData.userInfoAll.phone的状态,

但是我的B页是要从服务器获取数据列表的,用onShow并不行

yyu
yyu3 楼5 年前

这个应该算是一个bug吧,我之前也碰到过类似问题,后来总结是app.globalData不能跨页面修改和请求,PageA修改了globalData的值只有PageA可以查得到,PageB得到的是初始值