我有一个案例,我希望在界面中只有一个get,没有设置。有没有办法做到这一点?
如果没有,我们可以实现一个set并在调用它时抛出异常。但如果我们能得到一个更好的清洁它会更清洁。
目前我有:
export interface IElement {
type : TYPE;
}
export class Element implements IElement {
public get type () : TYPE {
return TYPE.UNDEFINED;
}
public set type (type : TYPE) {
this.type = type;
}
}
我想拥有我的界面&课程是:
export class Element implements IElement {
public get type () : TYPE {
return TYPE.UNDEFINED;
}
}
答案 0 :(得分:1)
TypeScript接口当前无法将属性定义为只读。如果防止这一点很重要,则需要在运行时抛出异常/错误,以防止属性的setter中的集合。
编译器不要求您实现get
和set
。例如,您可以实现get
。但是,在运行时,它不会被捕获。