严格模式作用: 开启之后会对不通过mutation就直接去修改数据的操作进行报错 严格模式:开启严格模式,仅需在创建store的时候传入 strict:true 代码如下 const store = new Vuex.Store({ strict:true }) 在严格模式下,无论何时发生了状态变更且不是由mutation函数引起的,将会抛出错误。这能保证所有的状态变更都能被调试工具跟踪到 开发环境与发布环境 不要在发布环境下启用严格模式! 严格模式会深度监测状态树来检测不合规的状态变更。请确保在发布环境下关闭严格模式,以避免性能损失 类似于插件,我们可以让构建工具来处理这种情况 代码如下() const store = new Vuex.Store({ strict: process.env.NODE_ENV !== 'production' }) -------------------------------------------------------------------------------------------------------- 具体操作如下 在store文件夹里面的index.js文件里面的const store = new Vuex.Store({})里面写strict:true 去add.vue文件里面,把和 //this.$store.state.count++; 解开注释 然后去页面点击'修改数据'按钮,就会发现在严格模式下报错了。原理是不允许直接修改数据,一定要通过mutation才能进行修改数据 一般不开启严格模式,开了之后就会做深层次检测,比较消耗性能,访问更慢 如何避免不在发布环境开启严格模式,代码如下 在store文件夹里面的index.js文件里面的const store = new Vuex.Store({})里面把strict:true改成strict: process.env.NODE_ENV !== 'production'