【发布时间】:2020-03-03 01:09:04
【问题描述】:
是否可以从string 值获取组件类型(Type<T>)?喜欢:
let typeStr: string = 'MyComponent';
let type: any = resolveType(typeStr); // actual type
【问题讨论】:
-
为什么需要这个?我可以知道吗
-
我做了一个指令,它根据提供的类型动态创建组件。目前我必须在父组件中声明一个变量并将其值分配给所需的类型,然后将此值绑定到我在 html 布局中的指令。我想摆脱这个,只需将一个字符串传递给指令。
-
我想说在一个模块中有一个服务,它包含一个注册的 cmoponents 数组 - 类型和选择器。使用此服务通过选择器查找类型并在您的视图中动态呈现它。如上例所示,您将无法获得基于字符串的类型。您还可以使用 Angular 的内部注册组件列表,但创建自己的服务会给您带来灵活性。
-
也许有办法在模板中创建一个变量呢?喜欢
<button createComponent='let type = MyComponent'>Create</button>? -
type是什么意思?您想根据其名称获取对MyComponent类的引用吗?
标签: angular typescript