ngFor模板解析错误:解析器错误:意外的标记=列
我正在编写一个Angular应用程序,使用Angular CLI构建。我的组件中有一个名为的模型。该模型将使用前一页中的用户输入来构建。在当前页面中,我将这个模型中包含的数据以HTML表格的形式显示给用户。下面是我如何做到这一点:ngFor模板解析错误:解析器错误:意外的标记=列
<input type="radio" [(ngModel)]="criteria1" name="parameter1Identifier">Class A <input type="radio" [(ngModel)]="criteria1" name="parameter1Identifier">Class B
.
.
<input type="radio" [(ngModel)]="criteria2" name="parameter2Identifier">Type 1
<input type="radio" [(ngModel)]="criteria2" name="parameter2Identifier">Type 2
.
.
<table>
<thead>
<tr *ngIf="tableColumnCount">
<th *ngFor="let colNumber of tableColumnCount | rangePipe">
<input type="checkbox"
[checked]=false
(click)="selectAllElementsInColumnOfTheTableIn(colNumber);">
select column {{ n + 1 }}
</th>
</tr>
</thead>
<tbody>
<tr *ngFor="let row of globalModel | modelToArrayOfArraysFilter: criteria1: criteria2;">
<td *ngFor="let acol of row; let i = index; totalColumnsOfTheTable = row.length"> <--- Error!
....
</td>
</tr>
</tbody>
</table>
而且totalColumnsOfTheTable
在组件定义如下:
set totalColumnsOfTheTable(count: number) { if (this.tableColumnCount < count) {
this.tableColumnCount = count;
this._cd.detectChanges();
}
}
在该表的row
可以有任意数量的像[OBJ],[OBJ1元素, obj2],[objA,objB,objC],[objN] ...基于用户在单选按钮上选择的criteria1
和criteria2
从模型中过滤此数据。所以基于此,表数据被填充。变量tableColumnCount
将具有总列数的计数,并且该表应该相应地更新。要确定总列数,我试图使用*ngFor
中的setter作为totalColumnsOfTheTable = row.length
。
但是,角抛出错误像
"Template parse errors: Parser Error: Unexpected token = at column 65 in [let acol of row; let i = index; totalColumnsOfTheTable = index] ".
我尝试使用trackBy
到acheve相同。我发现this
没有提到'组件'。所以,如果我拨打this.totalColumnsOfTheTable = index
不起作用!
请帮助我确定总列数或任何其他方式来设置*ngFor
循环内的组件变量。任何帮助是极大的赞赏。任何建议的方法是非常值得欢迎的!
回答:
你穿上新变量前面忘了let
,它应该是这样的:
<td *ngFor="let acol of row; let i = index; let totalColumnsOfTheTable = row.length">...</td>
以上是 ngFor模板解析错误:解析器错误:意外的标记=列 的全部内容, 来源链接: utcz.com/qa/260772.html