为了账号安全,请及时绑定邮箱和手机立即绑定

vuex的使用:为什么我可以在js中这样修改state的值

vuex的使用:为什么我可以在js中这样修改state的值

摇曳的蔷薇 2018-09-02 00:21:25
官网是这样说的你不能直接改变 store 中的状态。改变 store 中的状态的唯一途径就是显式地提交 (commit)mutation。这样使得我们可以方便地跟踪每一个状态的变化,从而让我们能够实现一些工具帮助我们更好地了解我们的应用。但是在我的项目中我这样写var list = this.$store.state.records; for(let i=0;i<list.length;i++){     list[i].days = this.computeDayas(list[i].time); }通过vuex-devtools发现state中的records多出了days的一个属性!?,这是为什么呢?我并没有显示的去修改数据啊
查看完整描述

2 回答

?
小怪兽爱吃肉

TA贡献1852条经验 获得超1个赞

使用严格模式:

const store = new Vuex.Store({ 
   // ...options
    strict: process.env.NODE_ENV !== 'production', // 在非生产环境下,使用严格模式})


查看完整回答
反对 回复 2018-09-09
?
慕尼黑5688855

TA贡献1848条经验 获得超2个赞

对象引用而已, 这样加进去的数据, 不会触发视图更新

查看完整回答
反对 回复 2018-09-09
  • 2 回答
  • 0 关注
  • 2967 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信