过去给JavaScript的对象赋值,形式为:
let test = {};
obj.prop = 123;
但是在TypeScript中,这会产生一个错误:
类型“ {}”的值不存在属性“ prop
对于TypeScript来说有严格的类型检测,想要给其中的对象赋值,可以使用接口的方式:
一.
export interface IDrawDQG {
subdivFactor?: number
DQGStyle?: number
isDrawSurface?: boolean
[key: string]: any
}
通过设置可选属性和必传属性能很好的规范传入参数,也可以根据后续开发工作灵活在某的地方添加需要的键值对,个人比较推荐这种方法,因为看起来很规范并且便于维护和更新新的属性
二.
let drawDQGOptions: {[key:string]:any} = {}
对于临时使用的对象,可以采用这种形式
实际上动态赋值还可以采用泛型的形式,在下次一的文章中也会和大家分享,欢迎大家讨论,有问题还请大家指出一起解决