Angular 15 mat-checkbox, для проверки используйте собственную логику

Я использую Angular 15, а также компоненты материалов. Я хотел использовать флажок материала и реализовать свою собственную функцию (функцию щелчка), где я установил для checkItem.start значение true/false и где я ожидал, что флажок должен быть установлен или снят в зависимости от значения моего флага. Я не хочу использовать двустороннюю привязку, так как она автоматически обновляет мои значения при установке флажка, который я хочу изменить внутри своей функции щелчка самостоятельно и обновить его.

Проблема в том, что мой флажок всегда будет проверен еще до того, как я введу функцию в свое свойство «click», и даже если мой флаг обновляется другим значением, компонент не обновляется. Я также пытался использовать функцию ChangeDetectorRef.detectChanges() для обновления, но, к сожалению, она не работает.

Также важно отметить, что я использую индивидуального поставщика, который выглядит следующим образом:

      providers: [
      { provide: MAT_CHECKBOX_DEFAULT_OPTIONS, useValue: {} as MatCheckboxDefaultOptions }
   ]

HTML для Angular компонента:

      <mat-checkbox
        [disabled]="isReadOnly(checkItem) || checkItem.finished"
        [checked]="checkItem.start"
        (click)="doCheck(checkItem, $event)"
</mat-checkbox>

Возможно, я использую неправильные свойства компонента?

0 ответов

Другие вопросы по тегам