//子组件,更新 store里面的 errors
const setErrorMsg = errorMsg => {
const errors = store.getters.getErrors(keyName.value) || []
errors[props.index] = errorMsg
store.commit('setErrors', {
errors: errors,
key: keyName.value
})
}
// 父组件监听,没有加 deep: true的时候只初始化监听一次
watch(
() => store.getters.getErrors(keyName.value),
newVal => {
console.log('DDDDDDD', store.getters.getErrors(keyName.value))
//todo
},
{
// 强制深度遍历源
deep: true
}
)
原因
image.pngwatch默认是浅层的:被侦听的属性,仅在被赋新值时,才会触发回调函数——而嵌套属性的变化不会触发。如果想侦听所有嵌套的变更,你需要深层侦听器.
网友评论