我正在处理一个看起来像这样的数组:
[
{
f_name: "c_name",
title: "k c name",
con_name: "cname",
path: "this.dialogData.name"
},
{
f_name: "c_num",
title: "k c num",
con_name: "cnum",
path: "this.dialogData.number"
}
]
在html文件中,我如下遍历此数组:
<mat-form-field *ngFor ="let f of fields">
<mat-label>{{f.title}}</mat-label>
<input formControlName={{f.con_name}} matInput name={{f.con_name}} value={{f.path}}>
</mat-form-field>
一切正常,但{{f.path}}
作为字符串而不是变量出现在字符串上。
例如,在第一个问题中,将值设置为this.dialogData.name
,而不是将test_name
设置为变量this.dialogData.name
的值。
我可以做些什么来引用基础变量吗?与将值用作路径字符串相反。
答案 0 :(得分:1)
根据我的评论,我相信您实际上是在尝试将每个元素中的属性path
初始化为this.dialogData
中的属性,而不是分配字符串。在这种情况下,您可以删除path
属性的括起来的引号。
尝试以下
fields = [
{
f_name: "c_name",
title: "k c name",
con_name: "cname",
path: this.dialogData.name // <-- no quotations
},
{
f_name: "c_num",
title: "k c num",
con_name: "cnum",
path: this.dialogData.number // <-- no quotations
}
];