【发布时间】:2019-06-28 16:56:52
【问题描述】:
我正在使用 Angular 2。我有 2 个嵌套的 ng-template,如下所示:
<ng-template ngFor let-support [ngForOf]="support">
<div class="row">
<div class="col-sm-3">
<div class="form-group form-float">
<div class="form-line focused">
<select [ngModelOptions]="{standalone: true}" [(ngModel)]="support.option" class="form-control">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
</select>
<label class="form-label">Option</label>
</div>
</div>
</div>
<div class="col-sm-3">
<ng-template ngFor let-op3 [ngForOf]="support.option3">
<select [ngModelOptions]="{standalone: true}" [(ngModel)]="op3" class="form-control">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
</select>
<label class="form-label">Option3</label>
</ng-template>
</div>
</div>
</ng-template>
没有内部ng-template 也能正常工作。有了内部循环,它会引发以下错误:
core.js:1449 ERROR 错误:未捕获(承诺中):错误:无法分配 引用或变量!错误:无法分配给参考或 变量!
这是支持模型:
{
"support": [
{
"option": "string",
"option2": "string",
"option3": ["string"]
}
]
}
【问题讨论】:
-
我建议您使用
ng-container而不是ng-template来绑定ngFor指令。会降低模板中伪代码的复杂度。
标签: angular angular2-ngmodel ng-template