gpt4 book ai didi

Typescript - 使用类的字符串名称访问类的属性

转载 作者:行者123 更新时间:2023-12-03 09:07:27 25 4
gpt4 key购买 nike

我正在上这门课:

import { SoapNotePage } from "../pages/forms/soap-note/soap-note";

export class FormMapper {
public static SOAP_NOTE = SoapNotePage;
}

访问该属性很容易,请参见以下示例:

open(item){
if(item.id == 1){
this.navCtrl.push(FormMapper.SOAP_NOTE, { patientId: 509070, formId: 75598 });
}
}

但我想要的是通过字符串名称动态地访问“SOAP_NOTE”属性,例如如下所示:

this.navCtrl.push(FormMapper['SOAP_NOTE'], { patientId: 509070, formId: 75598 });

我问这个问题的原因是函数“open(item)”的“item”参数可能包含 FormMapper 类的属性名称。

有什么办法可以做到这一点吗?

最佳答案

你可以这样做:

function open(item: keyof typeof FormMapper) {
console.log(FormMapper[item]);
}

这样您就可以将 item 值限制为 FormMapper 类的键,编译器就不会提示。

关于Typescript - 使用类的字符串名称访问类的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45939326/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com