0
我有一個下拉列表,其中用戶選擇三個選項之一。基於它們的選擇,控制器會觸發一個函數,設置事件對象的兩個屬性的值。基於角度對象的值的預設下拉列表
這是下拉:
<select type="text" id="private_gallery" class="form-control" ng-model="gallerySetting" ng-options="setting for setting in gallery_settings" ng-change="setGalleryType(gallerySetting)">
</select>
這是從控制器用於填充下拉的代碼:
$scope.gallery_settings = ['Public', 'Private', 'Hidden'];
當公共,私有或隱藏被選擇,它們被傳遞到setGalleryType看起來像這樣的功能:
$scope.setGalleryType = function (galleryType) {
switch (galleryType) {
case 'Public':
$scope.event.private_gallery = 0;
$scope.event.active = 1;
break;
case 'Private':
$scope.event.private_gallery = 1;
$scope.event.active = 1;
break;
case 'Hidden':
$scope.event.private_gallery = 0;
$scope.event.active = 0;
break;
}
};
所有這些都按照ex pected。問題是應用程序重新加載的時間。由於gallerySetting模型未存儲在後端,因此下拉菜單不再使用正確的選項填充。這對用戶來說非常混亂,他們認爲設置沒有正確保存。
我需要以某種方式設置基於event.private_gallery
和event.active
值的下拉菜單。我想下面的代碼,但會要求範圍的問題並沒有什麼後下拉,然後確認爲角:
$scope.setGallerySetting = function() {
if ($scope.event.private_gallery == 0 && $scope.event.active == 1){
return 'Public';
} ...
};
$scope.gallerySetting = $scope.setGallerySetting();
任何想法的基礎的方式來做到這一點?