vuex mapState某个state失效
背景是尝试用vuex和echarts画图
store数据是这样:
state: {
selectedKpis:[],
currentCell:{
cellID:'',
cellName:'',
kpiData:{},
},
},
然后是画图的组件
computed: {
...mapState({
option:function(state) {
let kpi = state.currentCell.kpiData;
let selectedKpi = state.currentCell.selectedKpis
//接下来为myOption设置
...
return myOption
}
}),
watch: {
selectedKpis: function(val) {
console.log("watch", this.selectedKpis);
this.charts.setOption(val, true);
},
发现kpiData更新可以触发mapState和watch,但是selectedKpis更新时mapState却没有触发,这是为什么?我自己怎么也找不出来原因,谢谢大佬帮忙解答
其它信息:
测试了单独包含selectedKpis的计算属性,发现mapState和watch也都可以触发,相关计算属性如下
test: function(state) {
console.log("testt", state.selectedKpis);
let tmp = state.selectedKpis;
return { aaa: tmp };
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
别的没看出来什么,就看出来了上面代码块里:
let selectedKpi = state.currentCell.selectedKpis
,下面代码块里:let tmp = state.selectedKpis
.所以会不会是 selectedKpis 的层级不对