猿问

请各位大佬指点!vuex相关:如果数据从服务器获取,并且经过运算才进入state,应该怎么写?

如果从服务器获取了一个list,然后这个list又经过了本地js的加工,才成为能用的新list,然后我想赋值给vuex的state,应该怎么写?
是在App.vue的onLaunch写运算过程,然后赋值给state?
还是在index.vue里写?
还是写在mutations里?
犯罪嫌疑人X
浏览 333回答 2
2回答

一只萌萌小番薯

先定义一个state叫list吧.mutations里写一个mutation,比如方法名为setApplist,函数内给list赋值组件内通过this.$store.$commit('setApplist',data)把data传给state上的list具体放在index.vue还是app.vue的看你自己的业务需求才进行划分,思路就是这样,并不复杂哦

慕慕森

我想可以用计算属性,代码如下:computed:{list(){letsetData=data;//data就是处理过后的数据this.$store.state.setData=setData;returnsetData;}}也可以用监听。这是一种直接设置的办法,当然也可以用mutations,例如这么定义一个函数:addImgList(state,userList){state.imgList=userList},在你的组件中,你可以先引入:...mapMutations(['addImgList']);在某个事件或者方法内去调用://参数就是你新处理后的数据this.addImgList(newData);当然或许还有其他方式。
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答