这两天来一直困扰着我,如何在ngModel循环中为每个新的迭代创建一个新的*ngFor?我的想法是加载一个问题列表,在每个问题中我有两个命题,下面是html

 <div *ngFor="#qt of listQuestion">

<h3 class="uk-accordion-title" >{{qt.wordingQ}}</h3>

 <div class="uk-accordion-content">

<input type="checkbox"  id="0" [(ngModel)]="selected"  (Change)="cbChange($event)"/>

<label for="0" class="inline-label" > <b>{{qt.lpo[0]}}</b></label><br>

<input type="checkbox"  id="1" [(ngModel)]="selected_1" (Change)="cbChange_1($event)"/>

<label for="1" class="inline-label"><b>{{qt.lpo[1]}}</b></label><br>


                                   </div></div>

只有当你在listQuestion中有一个问题时,如果有多个问题,我会检查第一个问题的proposition(例如:lpo[0])之后,其他所有的第一个命题(首先是因为lpo = 0的索引)都将被选中
这是一张说明问题的图片:
html5 - 如何在Angular2中使用* ngFor动态生成ngModel?-LMLPHP
有什么帮助吗?

最佳答案

很简单,在处理true or false时,必须确保json包含适当的checkbox字段。
我会用这种方式,

[(ngModel)]="qt.lpo[0]"  //qt.lpo has to be true or false
// Answer1, Answer2  you can manage separately

[(ngModel)]="qt.lpo[1]" //qt.lpo creates new instance for each iteration of ngFor loop.

这样,它为每个问题创建不同的ngFor。但是您必须确保ngModel字段应该包含true或false。

关于html5 - 如何在Angular2中使用* ngFor动态生成ngModel?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37747064/

10-13 01:01