如何使用ts中的public方法在类中添加公共或私有属性



我试图在调用类的公共方法时在类定义中添加一个公共或私有变量,例如在下面给出的类定义中。

export default class Container {
public addFlag(flagName: string): void {
// create a new private or public property in class and assign a value to it.
}
}

如果我创建一个容器类的实例并在该实例上调用addFlag(),我想在类定义中添加一个公共或私有变量并为其赋值,我如何在Typescript中实现这一点?。

使用[index signature][1]使类成为动态对象

class Container {
[key: string]: any;
public addFlag(flagName: string): void {
this.flagName = flagName;
}
}
const container = new Container();
container.addFlag("abc");
console.log(container.flagName); // "abc" 

但索引签名不能使用Access modifiers:public、private或protected。

最新更新