我正在用来自数组的数据填充表,并且我想将自定义输入集中在表的最后一个元素上,所以我需要这样做:
<tr *ngFor="let detail of detailsList; let i = index" (dblclick)="showDetailDetails(detail.ID, i)">
<th>{{ a few table fields}}</th>
<th>
<md-input-container>
<input [focus]="detailsList.length-1 == i" mdInput type="number" (keypress)="qtKeyDown($event)" (change)="getTotalNetAmount(i)" [(ngModel)]="detail.OrderedQuantity" [ngModelOptions]="{standalone: true}" value="{{detail.OrderedQuantity}}" min="1" OnlyNumber="true" [disabled]="!editMode">
</md-input-container>
</th>
<th>
(More fields)
</th>
</tr>
Run Code Online (Sandbox Code Playgroud)
它按预期工作,但是当数组中有多个项时,我的控制台出现错误。我注意到问题出在以下代码中:
detailsList.length-1 == i
Run Code Online (Sandbox Code Playgroud)
反正有解决此错误的方法吗?该代码按预期工作,因此该错误不会干扰网站的行为,问题是我不希望用户在浏览器控制台中看到错误。
这通常与changeDetection有关。没有看到您的代码,我猜您在某个时候正在执行push()。在push()之后添加以下内容:
import { ChangeDetectorRef } from '@angular/core';
constructor(private ref: ChangeDetectorRef) { }
this.something.push(someVar);
this.ref.detectChanges();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1393 次 |
| 最近记录: |