由于vue.js的特殊机制,初始化后给对象添加的属性是无法更新UI的.

最近结合typescript和vue进行web开发,就遇到了这样的坑.

class user{

name:string;

age:number;

constructor(){

}

}

var v=new Vue(var v2 = new Vue({
            el: '#app',
            data: {
               user:new user()
            }});

 

如果直接这样把user提交给vue,后续user.name='xxxx',UI是不会更新的

再控制台打印出user,什么都没有,因此务必在构造函数中初始化字段:

constructor(){

this.name="";

this.age=0;

}

脑袋里一定要有根线:ts中class interface之类的东西只是为了声明!!!