微信小程序跨页面修改data数据,并且能在视图层立刻看见怎么解决

类似加入购物车功能,静态数据怎么才能实现跨页面修改数据并在视图层立刻做出改变

注意:storage 应只用来进行数据的持久化存储,不应用于运行时的数据传递或全局状态管理。启动过程中过多的同步读写存储,会显著影响启动耗时。
因此我们不要用storage,改用app.globalData来页面中传递值。
思路:
1、A页面中将数据存入app.globalData
2、B页面的onShow中将app.globalData中的数据读取出来,并用this.setData({ }) 来触发页面渲染使视图层立即做出改变。
为什么要在onShow中读取并渲染呢?这样可以保证A是B的子页面栈的时候,在这种边缘情况下,通过返回键回到B页面也可以正常渲染出来。

  1. 如果只是上下页的事,就简单点通过获取页面栈的方式

    img

  2. 如果是很复杂的页面跳转了,用app.globalData或者storage的方式

storage缓存或者globalData全局变量