2017-09-24 6 views
0

反応形状と角度材料のmd-selectを使用しています。 角度4でformcontrolnameを使用してmd-selectの値を選択する方法

この

は私がコードからMD-選択値を設定したい私のフォーム

<md-select placeholder="Parent Category" class="full-width" formControlName="parent_id"> 
    <md-option>None</md-option> 
    <md-option *ngFor="let category of plainCategories" [value]="category.id"> 
    <span *ngIf="category.subcategory.length==0">&nbsp;</span>{{ category.name }} 
    </md-option> 
</md-select> 

であり、これは私が

onClicked(e){ 
    if (e && e.action == 'edit') { 

    let item = { 
     id: e.item.id, 
     name: e.item.name, 
     slug: e.item.slug, 
     parent_id: e.item.parent_id 
    }; 

    this.categoryForm.setValue(item); 
    } 
} 

これは、フォーム値({{categoryForm.val | json}}を更新しているを試してみましたが、どのような値を示しています設定されています)、selectオプションは選択されたオプションを表示していません。どうすればmd-optionを選択できますか?形式で宣言され、次いでsetValue()は機能しません(例えば、要素idnameslugparent_idほか、categoryと呼ばがある場合)更新するフィールドで設定した場合

enter image description here

答えて

1

は完全ではありません、代わりにpatchValue()を使用します。

this.categoryForm.patchValue(item); 

あなたはまた、フィールドごとに値を設定することができます

私の例を参照してくださいplunker:https://plnkr.co/edit/PftFkCQ5fvLICczt7gAO?p=preview

+0

回答ありがとうございます。値が文字列の場合、これはplnkrで完全に機能しています。しかし、私のparent_idはmd-optionが選択されていない理由です。番号を選択可能にするにはどうすればいいですか? –

+1

は、私の大雑把な、widhの数値IDを更新しました。必要に応じて複雑なオブジェクトでも動作する可能性があります。さらなる助けが必要な場合は私のプランカを更新してください。 – Andriy

関連する問題