私はrc.1のために構築したアプリケーションをrc.3と新しいフォームモジュールにアップグレードしています。私はそれのbeacuseから私の髪をリッピングしてきたし、誰かが私が間違っているアイデアを持っていたかどうかを確認することを決めた。 Angular2モデル駆動型と事前設定済みの値
は基本的に私はこのような形式(fbはFormBuilderのインスタンスである)を構築しています:this.form = fb.group({
client_id: ['Customer', Validators.compose([Validators.required, formValidators.mustBeNumber])],
data_owner_id: ['Data Owner (if different from Customer)', formValidators.mustBeNumber],
order_time: [new Date(), Validators.compose([formValidators.mustBeDate, Validators.required])]
})
をそして、このようngModelを事前入力:
<form class="form" [formGroup]="form" (ngSubmit)="submitJob(f)">
<legend>{{title}}</legend>
<div class="form-group">
<label for="client_id">Client</label>
<select (change)="clientHasChanged($event.target.value)" class="form-control" id="client_id" formControlName="client_id" [(ngModel)]='job.client_id'>
<option value="" disabled selected>Customer</option>
<option *ngFor="let client of clients" [ngValue]="client.client_id">{{client.client_id}} - {{client.client_id_name}}</option>
</select>
これは、RCのために完璧にうまくいきました。 1(名前が変更されたディレクティブの外側)、エラーが発生しました:
browser_adapter.ts:74 EXCEPTION: Error in http://localhost:4200/app/+wih2/+job/job.component.html:6:129 ORIGINAL EXCEPTION: No value accessor for ''
Rem ngModelを実行するとエラーが取り除かれますが、データが必要です。これを解決する方法は他にありません。
私は新しいフォームのモジュールを使用していて、はい、私はそれをブートストラップしています:
bootstrap(AppComponent, [disableDeprecatedForms(), provideForms(), HTTP_PROVIDERS, APP_ROUTER_PROVIDERS]);
は、いくつかの答えを楽しみにしています!
あなたはすべてのエラーを投稿できますか? – maxisam
しかし、私の推測では、 '@ angle/common 'の' import {NgForm}'を忘れています;そして、実際にはngModelに頼る必要はありません。あなたはsubscribeすることができますclient_id – maxisam
私はNgFormをインポートしています。私は明日の朝にstacktrace全体を投稿します。 – yusijs