Угловая интерполяция не работает должным образом? - PullRequest
0 голосов
/ 08 ноября 2018

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

образец: нажмите меня

фрагмент кода:

Здесь я добавил событие (open) = "onOpen ()"

<ejs-dropdownlist 
    (open)="onOpen()"
    required id="ddlApp" name="ddlApp" [dataSource]='appDataSource' [allowFiltering]='true' 
    [itemTemplate]="itemTemplate" [valueTemplate]="valueTemplate" [(ngModel)]="dropdownlApp" 
    #ddlApp="ngModel" [placeholder]='ddlAppText' [fields]='fields'>

образец 2: нажмите меня

В этом примере я бы не добавил ни одного события, в этом случае интерполяция не работает.

Фрагмент кода:

<ejs-dropdownlist 
   required id="ddlApp" name="ddlApp" 
   [dataSource]='appDataSource' [allowFiltering]='true' 
   [itemTemplate]="itemTemplate" [valueTemplate]="valueTemplate" 
   [(ngModel)]="dropdownlApp" #ddlApp="ngModel" 
   [placeholder]='ddlAppText' [fields]='fields'>

1 Ответ

0 голосов
/ 08 ноября 2018

Просто удалите changeDetection: ChangeDetectionStrategy.OnPush из вашего @Component декоратора, ваш второй образец будет работать

Ваш компонентный декоратор должен читаться как

@Component({
  selector: 'my-app',
  templateUrl: './app.component.html',
  styleUrls: [ './app.component.css' ]
}) 

Привязать массив объектов в ngOnInit() это правильный способ привязки и правильное время для привязки значений - Спасибо, Счастливого кодирования !!

...