2016-08-22 106 views
0

我用ngstorage保存在localStorage的一些值 我contrroller是:綁定到下拉

app.controller("main", function($scope, $localStorage) { 
$scope.$storage = $localStorage.$default({   
      selectedlanguage: { language: null, text: "All Languages" } 
     }); 
    $scope.languages = [ 
      { language: null, text: "All Languages" }, 
      { language: "en", text: "English" }, 
      { language: "ar", text: "Arabic" } 
     ]; 

} 

我的觀點是:

<select ng-model="$storage.selectedlanguage" ng-options="lang.text for lang in languages"> 
</select> 

重新加載該頁面角的selectedlanguage不能結合時 在此先感謝

回答

1

在ng-options屬性中,您可以指定表達式中每個選項的值和標題精靈,你的另一個問題是你指定一個對象作爲ng模型,你需要告訴下拉哪個值匹配,所以在選定的語言對象上訪問語言將正常工作。

<select ng-model="$storage.selectedlanguage.language" ng-options="lang.language as lang.text for lang in languages"> 
</select> 

上面是一樣的下方,但更復雜的表達式,下面的是隻是更容易閱讀,但它是完全一樣的:

<select ng-model="$storage.selectedlanguage.language"> 
    <option ng-repeat="lang in languages" value="{{lang.language}}"> 
     {{lang.text}} 
    </option> 
</select> 

演示:https://jsfiddle.net/suunyz3e/289/

+0

謝謝。你回答解決我的問題:) –

+0

很高興幫助@beshoysemsem! –