【发布时间】:2017-08-25 07:48:14
【问题描述】:
我在动态创建的小部件中有相同的选择选项列表。因此,每当我从小部件 #1 中选择一个选项时,也会为其他小部件选择相同的选项。 如何隔离它们的范围以从小部件中识别每个选项。我检查了几个链接,例如:this one 或 this one。但我需要在 Angular 4 中完成。有线索吗?
dashboardConfig.component.html ###
这部分要选号。小部件的
<div class="edit-dashboard">
<select [(ngModel)] = "widgetCounter" (change)="widgetCountFunc()">
<option *ngFor="let i of ArrayOfNumbersForWidget">{{i}}</option>
<select>
</div>
这部分用于创建小部件
<div class="widget-area" *ngFor="let i of widgetObjList ">
<select [(ngModel)]="selectedOption (change)="selectedOptForThisWidget()">
<option *ngFor="let opt of ListOfOpts" [value]="opt">{{opt}}</option>
</select>
</div>
dashboardConfig.component.ts ###
widgetCountFunc(){
this.ListOfOpts = ArrayMaker(this.widgetCounter);
}
ArrayMaker() 这部分创建一个选定数字的数组,不详述
所以问题出现在[(ngModel)] = "selectedOption"。
1) 如何为每个小部件选择单独的选项? 例如对于小部件 #1 -> 选项 #2;小部件 #2 -> 选项 #5 等
2) 如何显示每个小部件的预选选项
"selectedOption" 假设我们有一个包含小部件和相应选项的 json 文件?
【问题讨论】:
-
请贴一些代码
-
后置HTML代码和组件代码。
-
请为您的问题添加minimal reproducible example。
-
每个组件应该接收放置在其上的任何指令的唯一实例。如果它们是需要唯一名称的元素,那么您可能会为它们提供所有相同的标识符,这就是它们表现出相同行为的原因......但正如其他用户所提到的,没有您的代码就不可能知道。
-
添加了最少的代码。
标签: angular angularjs-scope angular2-directives