2017-02-03 117 views
1

我搜索了互聯網的高速公路,並沒有拿出一個可行的解決方案來解決我的問題。離子2填充動態選項,通過ngModel選擇一個

我有這個代碼,它創建了一個動態的api選項列表,這個工作非常有效。

 <ion-select 
      formControlName="dataset" 
      (ionChange)="checkDataset($event)" 
      [(ngModel)]="chosenDataObj.dataset"> 
      <ion-option 
      *ngFor="let data of dataSet"> 
      {{data}} 
      </ion-option> 
     </ion-select> 

此應用程序保存「數據集」信息NativeStorage分別在返回到這個頁面,進行檢索。我需要將動態離子選項的值設置爲先前選定的值。我試過

ngModel=chosenDataObj.dataset 
[selected]="chosenDataObj.dataset" 
[checked]="foo" 

和各種各樣的變化,但無濟於事。根據其他許多消息來源,ngModel是正確的方法,但是由於它與FormBuilder耦合,似乎會發生衝突並且沒有正確設置它。

如果有任何幫助,我通過TS代碼中的承諾加載selectedDataObj.dataset,我知道值在那裏,因爲我可以將它用作佔位符屬性,並且它按預期工作。

任何幫助在這個問題將不勝感激。

感謝社區!

+0

你找到答案嗎? – gaurang

回答

0

我以前遇到過這個問題。

這是對我工作 -

formGroup直接設定值:

this.form_name.controls['dataset'].setValue(chosenDataObj.dataset) 

取決於當你想要的時候formBuilder被加載,ionChange事件或保存例如上展示。

+0

感謝您的時間@suraj,但不幸的是,我已經嘗試過,而且它也沒有工作。我已經登錄表格本身,「價值」甚至顯示正確的價值,但它在前端不可見。有一個更新值和有效性,但仍然沒有運氣。有什麼建議麼?感謝隊友 –

+0

也許試試ngZone .. https://angular.io/docs/ts/latest/api/core/index/NgZone-class.html –