代码之家  ›  专栏  ›  技术社区  ›  Florent Arlandis

禁用mat select cause ExpressionChangedAfterItHasBeenCheckedError上的波纹选择原因表达式

  •  0
  • Florent Arlandis  · 技术社区  · 7 年前

    当我在mat select元素上添加disableRipple时,会得到一个表达式ChangedFederathasBeenCheckedError

    我的代码:

    <mat-form-field>
              <mat-select [(value)]="selectedNumOption" disableRipple>
                <mat-option *ngFor="let option of resultNumOptions" [value]="option">{{ option }}</mat-option>
              </mat-select>
    </mat-form-field>
    

    错误:

    MatOption.html:1 ERROR Error: ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value: 'false'. Current value: 'true'.
        at viewDebugError (core.es5.js:8433)
        at expressionChangedAfterItHasBeenCheckedError (core.es5.js:8411)
        at checkBindingNoChanges (core.es5.js:8575)
        at checkNoChangesNodeInline (core.es5.js:12418)
        at checkNoChangesNode (core.es5.js:12390)
        at debugCheckNoChangesNode (core.es5.js:13183)
        at debugCheckDirectivesFn (core.es5.js:13085)
        at Object.eval [as updateDirectives] (MatOption.html:1)
        at Object.debugUpdateDirectives [as updateDirectives] (core.es5.js:13067)
        at checkNoChangesView (core.es5.js:12230)
    

    删除disableRipple是可行的,但为什么禁用动画会产生这种类型的错误呢?

    此外,是否有一种变通方法可以禁用“选择动画而不禁用”属性?

    0 回复  |  直到 7 年前
    推荐文章