ドロップダウンメニューからデータをバインドしようとしています。ngModel
です。アプリが読み込まれたときにエラーが発生して、それは意味があります。PrimeNGドロップダウンで選択したアイテムのデータバインド
browser_adapter.js:84 EXCEPTION: No value accessor for ''
これは、エラーがngModel
が最初にどのようなデータアプリケーションの負荷にバインドされていないという事実に起因していることを信じるように私をリード。
Observablesを使用するのがベストではありません...ご注意ください。
<p-dropdown [options]="actionsToTake" (onChange)="onToggleCreateActionInput()"
[(ngModel)]="action"></p-dropdown>
HTMLドロップダウンの部分的な関連活字体(除外輸入)
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
にバインドされた空の値は、アプリケーションを破ることはないと思うが、多分私はエラーを誤解している。最終的には、選択したアイテムをバインドする必要があります。このエラーが発生すると、その時点で私はそのポイントになります。
使用している角度ルータとフォームのバージョンはどれですか? –
ルータ3.0.0-beta.1とフォーム0.2.0 – BrianRT