Я просто пытаюсь связать данные из выпадающего меню с ngModel
. При загрузке приложения появляется ошибка, которая имеет смысл.PrimeNG выпадающий выбранный элемент привязки данных
browser_adapter.js:84 EXCEPTION: No value accessor for ''
Это приводит меня к мысли, что ошибка, вытекающая из того, что ngModel
первоначально не связана с какими-либо данными, когда приложение нагрузка.
Я не лучший при использовании Observables ... так что будьте осторожны.
Частичные из HTML выпадающего списка
<p-dropdown [options]="actionsToTake" (onChange)="onToggleCreateActionInput()"
[(ngModel)]="action"></p-dropdown>
Соответствующей машинопись (исключенный импорта)
export class ActionView {
public actionsToTake: SelectItem[] = [];
public action: Action = new Action();
constructor (private actionCreateService: ActionCreateService) {
// populate dropdown list (actionsToTake) with data from service call
this.actionCreateService.getActionFields().subscribe((resp) => {
for (let i = 0; i < resp.data.data.actionElm.length; i++) {
this.actionsToTake.push({label: resp.data.data.actionElm[i].name,
value: resp.data.data.actionElm[i].name});
}
});
}
public onToggleCreateActionInput = (action): void => {
// test if something in "action" exists, and then do something based on that
};
}
Итак, когда приложение сначала загружает, action
пусто. Я ожидал бы, что пустое значение, связанное с ngModel
, не нарушит приложение, но, возможно, я неправильно интерпретирую ошибку. В конечном итоге я хочу, чтобы выбранный элемент был привязан, и я думаю, что преодоление этой ошибки приведет меня к этому моменту.
Какую версию углового маршрутизатора и форм вы используете? –
Router 3.0.0-beta.1 и Forms 0.2.0 – BrianRT