MrM*_*men 2 methods class typescript
我有一个包含很多方法的类,我们称之为 myClass。我这样称呼它:
myClass[key]()
Run Code Online (Sandbox Code Playgroud)
有没有办法从 key 获取可能的值?我希望有类似 keyof myClass 的东西,但我得到“myClass 引用一个值,但在这里被用作类型”
问题可能是到目前为止 myClass 是在 .js 文件中定义并封装如下:
const myClass = new MyActualClass();
export default myClass
Run Code Online (Sandbox Code Playgroud)
是否可以在不将.js文件转换为typescript的情况下提取信息,并直接从MyActualClass中提取信息?
要获取运行时属性名称,您可以使用Object.keys或Object.getOwnPropertyNames。
在 TypeScript 级别,如果您想声明一个可以包含类实例键的变量,您可以这样做:
let s: keyof typeof myClass;
Run Code Online (Sandbox Code Playgroud)