javascript - Vue.js 如何向重复的数组对象添加新属性?

标签 javascript vue.js

html

<div v-repeat=dudes>{{a}}, {{b}}</div>

js

dudes = [{a:1}, {a:2}, {a:3}]

new Vue({
  el: 'body',
  data: {dudes: dudes}
})
dudes[0].b = 'test'

尝试设置 dudes[0].b = 'test' 不起作用。

http://jsbin.com/dogadutiqa/1/edit

除非我用 b 属性定义 dudes,并以 dudes = [{a:1, b:null}, {a:2}, {a:3}]

如何添加新属性?

最佳答案

由于 ES5 的限制,Vue 无法检测直接添加到对象或从对象中删除的属性。

您需要使用$add方法来声明该属性,以便可以监视它。另外,如果你想删除一个属性,你需要 $delete 方法。

关于javascript - Vue.js 如何向重复的数组对象添加新属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29760735/

相关文章:

javascript - 任何只有一个 API 同时支持桌面和移动设备的 Javascript 框架?

javascript - 当类型值相等时如何禁用字段

javascript - 如何在 Nuxt 2 或 3 中使用 .env 变量?

javascript - 如何更改 vuetify 组件中的字体大小

javascript - 如何在 watch 模式下进行任何 mocha 测试之前运行全局设置脚本

javascript - Canvas fillRect 不工作

javascript - 使用 JavaScript 增加局部变量

javascript - ReactJS:onClick更改元素

javascript - 从 Laravel View 将属性传递到 Treeselect vue 组件

javascript - 为什么在 vue.js 中这些数据无法正确地从父组件传递到子组件?