Невозможно изменить значения в ion-select-multiple - PullRequest
0 голосов
/ 26 марта 2020

Я использую ion-select-multiple. Это прекрасно работает нормально. У меня есть требование предварительно выбрать несколько вариантов. Я искал в Интернете и нашел решение, но после предварительного назначения значений, теперь, когда я пытаюсь изменить, он выдает ошибку.

Вот мой home.html код:

 <ion-select multiple="true" okText="Okay" cancelText="Dismiss" [(ngModel)]="followers" [value]="{$value: followers}">
    <ion-select-option value="brown">Brown</ion-select-option>
    <ion-select-option value="blonde">Blonde</ion-select-option>
    <ion-select-option value="black">Black</ion-select-option>
  </ion-select>

home.ts

followers = ['brown','black'];

Обратите внимание, Brown и Black предварительно выбраны, но если я попытаюсь выбрать / отменить что-либо из списка, это выдаст ошибку -

ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value: 'model: 12w 3'. Current value: 'model: [object Object]'.

Эта ошибка исчезнет, ​​если я удалю этот код: [value]="{$value: followers}".

Как мне исправить эту ошибку?

Добавить снимок экрана с ошибкой:

enter image description here

1 Ответ

0 голосов
/ 27 марта 2020

Добавьте кусок кода в ваш файл compoent.ts ...

import { Component, Input, ChangeDetectionStrategy,ChangeDetectorRef } from '@angular/core';

 @Component({
   selector: 'component',
   templateUrl: 'component.html',
   changeDetection: ChangeDetectionStrategy.OnPush
 })

 constructor(private cdRef:ChangeDetectorRef){} 
 ngAfterViewInit() {
    this.cdRef.detectChanges();
 }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...