|  |      1cydysm      2020-05-10 15:05:12 +08:00 via iPhone computed ? | 
|  |      2shintendo      2020-05-10 15:08:58 +08:00 想象不出“不能提前声明”的场景,能举个例子么 | 
|  |      3gouflv      2020-05-10 15:17:01 +08:00 via iPhone 对象内部的属性可以动态添加 | 
|  |      5rabbbit      2020-05-10 15:24:48 +08:00 如果是指 data 里的属性的话, 可以用 Vue.set 方法 | 
|      6cs3230524 OP 换个方法吧,有没有办法让 data 里不存在的属性在模板渲染的时候不报错? 例如: var vm = new Vue({ el: "#app", data:{ a:"test" } }) .... <td>{{b}}</td> .... | 
|      7cs3230524 OP 能不能让不存在的属性 b,在渲染的时候不报错? | 
|  |      8Messiahhh      2020-05-10 15:40:43 +08:00 给个空字符串不好吗 | 
|  |      9JasonSi      2020-05-10 16:07:29 +08:00 via iPhone @cs3230524 data 里定义一个对象 obj,你用户动态的属性都赋值给 obj,然后 obj.b 就行了呗? 如果要自动更新 ui,每次给 obj 赋值直接替换对象,而不是 obj.b=something ;或者 this.$set | 
|  |      10murmur      2020-05-10 16:18:19 +08:00 不需要,可以用$set 进行设置,点号赋值有时候未必能响应,但是如果一开始就是不响应的属性,$set 可能都没用,必须先把旧的属性删了 | 
|  |      11zysuper      2020-05-10 16:32:52 +08:00 data 里定义一个对象 obj, 然后用 immer 库修改 obj,最后把 data.obj = produce(baseState, draftState => { draftState.push({todo: "Tweet about it"}) draftState[1].done = true }) react 用户说。;) | 
|      13ghosthcp516      2020-06-04 10:46:16 +08:00 computed b () { return this.b || '' } |