首页 > 解决方案 > 未定义组件返回中按类名的角度反射

问题描述

我有很多类都有一个 Map 和一个从键返回 Map 值的函数。

像这样:

export abstract class EntityMap1 {
  private static _items = new Map<string, string>([
    ['PARAM1', 'VAL1'],
    ['PARAM2', 'VAL2'],
    ['PARAM3', 'VAL3']
  ]);

  static value(key: string): string {
    return this._items.get(key);
  }
}

并且必须在 html 中显示此值。使用类名和键值。

我在html上尝试这个:

{{ getValue('EntityMap1', 'PARAM1') }}
{{ getValue('EntityMap2', 'KEY1') }}

这在组件上:

  getValue(enumName: string, key: string) {
    return eval(enumName).value(key);
  }

但结果是: “错误:EntityMap1 未定义”(即使我导入类)

PS:我不对每个实体值使用函数,因为它们很多。

这是一个正在运行的示例:https ://stackblitz.com/edit/angular-ivy-nwacgl

有没有人有解决方案或建议?

标签: javascriptangulartypescript

解决方案


推荐阅读