gpt4 book ai didi

angular - ng6 : Dynamically form Variable names in html

转载 作者:搜寻专家 更新时间:2023-10-30 21:36:22 26 4
gpt4 key购买 nike

组件

在我的组件中我有这样的变量。

i18 = 'server';
i19 = 'database';
i21 = 'share-alt';
i20 = 'battery-full';
i22 = 'soundcloud';

html

这将显示组件中的 var i18

<fa [name]="[i18]"></fa>

这将显示组件中的 var i18

<fa [name]="i18"></fa>

这解析为“i18”而不是“服务器”

<fa [name]="'i'+category.id"></fa>

问题

在最后一个片段中,我试图从具有 'i'+category.id 的组件中获取 i18 的值,其中 category.id 是“18”,它打印“i18”模板。我如何编写 HTML,使 'i'+category.id 的值为“server”

最佳答案

您不能在模板中动态创建变量名。您可以将值存储在 Map 结构中:

public names = new Map<number,string>([
[18, "server"],
[19, "database"],
[20, "battery-full"],
[21, "share-alt"],
[22, "soundcloud"],
]);

并使用模板中的 get 方法检索它们:

<fa [name]="names.get(category.id)"></fa>

参见 this stackblitz用于演示。

关于angular - ng6 : Dynamically form Variable names in html,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51249884/

26 4 0