Я хочу, чтобы мой выбор в выборе оставался выбранным, когда я перебираю виды и возвращаюсь назад.
Вот вид:
<select ng-model="getseason" class="form-control" ng-options="season as 'Season '+ season + '/' + seasonaddone(season) for season in seasons">
Вот контроллер:
$scope.seasons = [2014,2013,2012,2011,2010,2009,2008,2007,2006,2005];
$scope.getseason = $scope.seasons[0];
$scope.$watch('getseason',function(){
var url = 'http://api.football-data.org/alpha/soccerseasons/?season=' + $scope.getseason;
apiDataService.GetData(url).then( function( data) {
$scope.leagues = data;
});
});
Я знаю, когда возвращаюсь с другого вида, этот контроллер снова загружается и устанавливает значение в season[0]
.
Создайте службу и сохраните это значение. Каждый сервис устанавливается только один раз для нагрузки приложения, поэтому, если вы храните там значение, оно не исчезнет после изменения маршрута. Btw. это также может быть хорошим местом для хранения вашей модели (например, массива сезонов). Пример реализации:
app.controller('MyController', function ($scope, seasonHelper) {
$scope.getseason = seasonHelper.getseason;
$scope.$watch('getseason', function(){
seasonHelper.getseason = $scope.getseason;
...
});
})
.service('seasonHelper', function () {
this.seasons = [2014,2013,2012,2011,2010,2009,2008,2007,2006,2005];
this.getseason = this.seasons[0];
});