vue有没有便捷方法设置数组中所有对象的同一个属性
时间: 2023-11-08 12:42:07 浏览: 88
是的,Vue.js 提供了一个便捷的方法 `$set` 来设置数组中所有对象的同一个属性。这个方法可以在 Vue 实例中使用。
以下是一个示例代码:
```javascript
// Vue 实例
var vm = new Vue({
data: {
array: [
{ name: 'Alice', age: 25 },
{ name: 'Bob', age: 30 }
]
},
methods: {
setAgeOfAllObjects: function(age) {
this.array.forEach(function(obj, index) {
// 使用 $set 方法设置属性值
vm.$set(obj, 'age', age);
});
}
}
});
// 示例用法
vm.setAgeOfAllObjects(20);
console.log(vm.array);
// 输出: [{ name: 'Alice', age: 20 }, { name: 'Bob', age: 20 }]
```
在上面的示例中,我们定义了一个 Vue 实例 `vm`,其中包含一个名为 `array` 的数组。`setAgeOfAllObjects` 方法通过使用 `$set` 方法遍历数组中的每个对象,并将 `age` 属性设置为指定的值。最后,我们可以打印 `array` 数组来验证属性是否已统一设置。
阅读全文