+
95
-

回答

有三种方式:

1. vuex:

自HBuilderX 2.2.5起,nvue支持vuex。这是vue官方的状态管理工具。

注意:不支持直接引入store使用,可以使用mapState、mapGetters、mapMutations等辅助方法或者使用this.$store

2. uni.storage:

vue和nvue页面可以使用相同的uni.storage存储。这个存储是持久化的。 比如登录状态可以保存在这里。

App端还支持plus.sqlite,也是共享通用的。


3. globalData:

小程序有globalData机制,这套机制在uni-app里也可以使用,全端通用。 在App.vue文件里定义globalData,如下:

<script>  
export default {
globalData: {
text: 'text'
},
onLaunch: function() {
console.log('App Launch')
},
onShow: function() {
console.log('App Show')
},
onHide: function() {
console.log('App Hide')
}
}
</script>


js中操作globalData的方式如下: getApp().globalData.text = 'test'

如果需要把globalData的数据绑定到页面上,可在页面的onShow声明周期里进行变量重赋值。

网友回复

我知道答案,我要回答