关于vuex中状态的实时更新问题
业务场景: 需要做一个全局的loading
思路:在store中新增一个userClick、loading参数,来判断是用户点击的行为,就改变 loading 为true;
但是在调试的过程中始终无法获取userClick的最新状态:
我通过 setUserClick 设置 userClick 状态为 true 后, 后面 try 这段代码中的 userClick 的值仍然是 false;百思不得其解。
但是我通过调用
store.state.userClick
后成功获取了最新状态;
后来才明白这是对象解构出了问题, 解构的时候复制的是变量的值,在函数里面并不会实时更新,所以需要重新访问 store 对象才能获取最新状态