uniApp解决关于Vuex动态添加state状态,数据不能及时更新的问题

Vuex设计

Vuex设计响应数据时需要提前定义,如果没能提前定义则无法实现响应式

例如:

mutations: {
		storeFloEngineObj:(state,obj)=>{
			state[obj.key] = obj.value
		}
	},

动态添加的属性无法实现响应式更新

解决办法

mutations: {
		storeFloEngineObj:(state,obj)=>{
			uni.$set(state,obj.key,obj.value) 
		}
	},

由于无法获取全局this则需要提前将uni.s e t 指向全局 t h i s . set指向全局this.set指向全局this.set

onLaunch: function() {
	uni.$set = this.$set
	console.log('App Launch')
},

版权声明:本文为Android_Cob原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。