关于页面间传值的问题
-
说:
一个首页有个选择城市的功能,点击选择城市跳转到城市列表页面,这个时候选择完城市返回首页。
问:
这个城市用何种方式传到首页比较好呢?
-
如果用的 redux 可以用 models ,如果没用redux 可以使用Taro.getCurrentPages(OBJECT)
使用方式同 getCurrentPages, 获取当前的页面栈,决定需要返回几层。可以通过页面栈修改上个页面的state值
-
用Redux,React-Context, 或者本地存储AsyncStorage, 还有路由跳转也可以带参数跳转。
RxJs应该也是可以的。 总之这个问题是可以解决的,只是方法的优雅程度。
-
https://taro-club.jd.com/topic/23/不使用-redux-如何设置全局变量
原来Taro已经提供了一个方法了
-
@smartchina1977 目前使用的dvajs 全局托管state来实现传值的,这种方式小程序没有问题,但是H5主动刷新页面会丢失全局的数据,是不是得把当前的状态树统一离线存储才行啊?不知道大佬你是如何处理的?
-
@smartchina1977 全局变量是可以,但是还是看场景。如果用户刷新(H5),那么存的值就丢失了。可以借助本地存储