使用浏览器后退按钮导航到页面时,Chrome上的角度绑定应用不正确

时间:2018-05-24 22:39:12

标签: angular google-chrome

有关为何会发生这种情况的任何想法?我有几个在ngFor:

中生成的文本框
    <tr *ngFor="let tableRow of lineItems; trackBy:trackByIndex; let rowIndex = index; ">     
      <td class="psavingsSmallerGridCell"><input currencyMask [(ngModel)]="tableRow.existingCost" [attr.disabled] = "shouldExistingChargeBeReadOnly(tableRow)"/></td>
      <td class="psavingsSmallerGridCell"><input currencyMask [(ngModel)]="tableRow.projectedCost" /></td>
      <td class="psavingsSmallerGridCell"><input currencyMask [ngModel]="tableRow.actualCost" disabled /></td>

我已经使用console.logged来验证模型中的lineItems数组是否准确,但无论出于何种原因使用Chrome中的后退按钮(版本66.0.3359.181(官方构建)64位),绑定到输入得到各种各样的提升。在我尝试过的浏览器中,到目前为止只有Chrome有这种行为。

Image of messed up rendering

我确实尝试删除currencyMask第三方指令,以消除它作为问题的根源。

使用开发工具检查DOM会显示混乱框上的ng-reflect-model属性分配了正确的值,只是输入文本值本身是错误的。

1 个答案:

答案 0 :(得分:0)

这最终与Angular的关系不大,而与Chrome对动态表单的处理有关。在表单元素上设置autocomplete = off可以解决问题。