2016-09-06 68 views
2

我使用的是角度ui.select,並且在將所選值綁定到模型時遇到了問題。我正在嘗試使用ui.select ng-model="data"來設置對象的變量。但出於某種原因,它不會選定的值不會綁定到模型上。這是我使用的代碼:Angular ui.select不綁定ng模型

<ui-select ng-model="data" ng-disabled="disabled" theme='select2' style="min-width: 300px;" title="some title"> 
    <ui-select-match placeholder="Select a credit status in the list">[[ $select.selected.variable ]]</ui-select-match> 
    <ui-select-choices repeat="options in options | filter: $select.search"> 
     <p>[[ options.variable ]]</p> 
    </ui-select-choices> 
</ui-select> 

使用這個選擇的值在我的情況下,模型不綁定。然後,我使用$parent.data這可以工作,但是當我使用多個UI選擇時,只有一個能夠一次工作。

必須有我做錯了任何幫助表示讚賞。

回答

3

這是一個常見的參考問題。

您可以使用對象爲NG-模型

ng-model="data.value" 

,或者你可以嘗試將控制器內部初始化數據。

$scope.data = null; 

,或者您可以使用如John Papa's style guide描述(這樣你將避免一次又一次地面臨着同樣的問題)的controllerAs查看語法。

<div ng-controller="CustomerController as controllerName"> 
    <ui-select ng-model="data" ng-disabled="disabled" theme='select2' style="min-width: 300px;" title="some title"> 
     <ui-select-match placeholder="Select a credit status in the list">[[ $select.selected.variable ]]</ui-select-match> 
     <ui-select-choices repeat="options in options | filter: $select.search"> 
      <p>[[ options.variable ]]</p> 
     </ui-select-choices> 
    </ui-select> 
</div> 
0

既然你要使用多個UI的選擇,我會建議創建和初始化包裹在$範圍對象的數組類似如下:

$scope.selections = { selectedData = [] }; 

那麼對於NG-模型,你可以使用適當的點符號:

ng-model="selections.selectedData" 

希望這有助於!