Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular NGM模型中的角度2-动态变量_Angular - Fatal编程技术网

Angular NGM模型中的角度2-动态变量

Angular NGM模型中的角度2-动态变量,angular,Angular,如何在ngModel中使用动态变量 我试图使用以下代码,但出现以下错误: <div *ngFor="let num of ['1','2','3']; let i=index"> <input id="qtd{{num}}" [(ngModel)]="qtd{{num}}" type="text"/> </div> 错误 未处理的承诺拒绝:模板分析错误: 解析器错误:获取插值({})假设您有以下组件 export class AppCompone

如何在ngModel中使用动态变量

我试图使用以下代码,但出现以下错误:

<div *ngFor="let num of ['1','2','3']; let i=index">
    <input id="qtd{{num}}" [(ngModel)]="qtd{{num}}" type="text"/>
</div>

错误

未处理的承诺拒绝:模板分析错误:

解析器错误:获取插值({})

假设您有以下组件

export class AppComponent {
  qtd1 = 'qtd1';
  qtd2 = 'qtd2';
  qtd3 = 'qtd3';
}
然后,您的模板可能如下所示:

<div *ngFor="let num of ['1','2','3']; let i=index">
  <input id="qtd{{num}}" [(ngModel)]="this['qtd' + num]" type="text"/>
</div>


在组件中定义数组并继续推入

export class AppComponent {
    qtd:any[] = {};
}
然后,像这样更新模板

<div *ngFor="let num of ['1','2','3']; let i=index">
    <input id="qtd{{num}}" [(ngModel)]="qtd[num]" type="text"/>
</div>

{{ qtd | json}}

{{qtd | json}
在此情况下,所有动态模型都将位于qtd阵列中


希望有帮助

在创建动态文本框的情况下,我们主要需要动态ngModel

在您的ts文件中

您的HTML文件(模板)


员工姓名
分支机构
轮班制
定制日期
{{emp.name}
--挑选--
{{branch.BranchName}
--挑选--
{{shifType.ShiftName}
提交

在我的情况下,类似这样的功能很好:

   export class AppComponent {
    qtd:any[] = {};
   }
在html中,我使用了索引而不是值(num):


如果需要与索引匹配的id,您也可以这样做

<div *ngFor="let num of ['1','2','3']; let i=index">
    <input 
     [attr.id]="'qtd'+i"
    type="text"/>
</div>


使用一个数组,然后使用
qtd[num]
。你能举个例子吗?它工作得很好!非常感谢。几个小时以来我一直在寻找正确的答案!谢谢!:)当我使用
{}
时,我遇到了bug。所以我使用了
qtd:any[]=[]有没有可能在这上面找到typesafety?我在这里找到了我要找的东西。类似于
nameof(“myProperty”)
。我可以添加动态模型值,但不能更改该动态值。你有什么想法吗?谢谢yurzui。它对我很有用。我可以用管道和这个“this['qtd'+num]”动态变量一起使用吗。如果是,请帮助me@kamalav检查这个,我在普通变量中使用了管道。但在这里(在动态变量中),它给出了错误。这就是我在[let abstract of this]的第55列询问uTemplate parse errors:Parser error:Missing expected][res.Id | replaceSpecialChar+'string'];@kamalav您能在stackblitz.com上复制它吗?
   export class AppComponent {
    qtd:any[] = {};
   }
<div *ngFor="let num of ['1','2','3']; let i=index">
    <input id="qtd[i]" [(ngModel)]="qtd[i]" type="text"/>
</div>
<div *ngFor="let num of ['1','2','3']; let i=index">
    <input 
     [attr.id]="'qtd'+i"
    type="text"/>
</div>