Vuex:如何将状态设置为null的对象?

时间:2020-04-28 21:44:42

标签: vue.js vuex

我有一个Vuex商店,其中有一个user对象处于状态。

在注销操作中,我或多或少都这样称呼:

context.commit('setUser', null);

我的变异实际上调用了state.user = null(实际上并不是在这种情况下),但是当我立即调用console.log(state.user)时,看起来什么也没发生。

完全清除处于状态的对象的“正确”方法是什么?

1 个答案:

答案 0 :(得分:0)

我想出了自己的问题。在我的setUser变异中,我在执行基于对象的逻辑之前正在检查if (typeof user === 'object') { ... }。好吧,事实证明typeof null实际评估为"object",这与我所期望的完全不同。今天我得知JS很奇怪。

我已将支票更新为if (user === null && typeof user === 'object')