在 Vue 中观察带有数字键的对象
Watch an object with numeric key in Vue
有没有办法在 Vue2 中观察具有数字键的对象中的特定值?如果它是一个“普通”字符串键,例如 obj = {keyName: []}
,我知道你可以这样做:
watch: {
'obj.keyName'() {
//Handle array change
}
}
但是,如果我有一个像 obj = {1: []}
这样的对象,其中键是一个数字怎么办 - 我知道你不能使用相同的观察者语法,比如:
'obj[1]'()
正常代码中的 和 obj.1
会引发错误。是否有另一种方法可以专门为 obj
对象的那个属性设置观察者?
你可以这样做:
watch: {
'obj.1'() {
// Handle array change
}
}
之所以有效,是因为 obj.1
并不是有效的 JavaScript 代码,而是 Vue 解析它并将其视为一个简单的键路径,它本质上等同于 obj['1']
.
有没有办法在 Vue2 中观察具有数字键的对象中的特定值?如果它是一个“普通”字符串键,例如 obj = {keyName: []}
,我知道你可以这样做:
watch: {
'obj.keyName'() {
//Handle array change
}
}
但是,如果我有一个像 obj = {1: []}
这样的对象,其中键是一个数字怎么办 - 我知道你不能使用相同的观察者语法,比如:
'obj[1]'()
和 obj.1
会引发错误。是否有另一种方法可以专门为 obj
对象的那个属性设置观察者?
你可以这样做:
watch: {
'obj.1'() {
// Handle array change
}
}
之所以有效,是因为 obj.1
并不是有效的 JavaScript 代码,而是 Vue 解析它并将其视为一个简单的键路径,它本质上等同于 obj['1']
.