Angular.js задерживает инициализацию контроллера

Я хотел бы отложить инициализацию контроллера до тех пор, пока с сервера не поступят необходимые данные.

Я нашел это решение для Angular 1.0.1:Задержка изменения маршрута AngularJS до загрузки модели для предотвращения мерцания, но не могработать с Angular 1.1.0

шаблон


Editor Template {{datasets}}

    

JavaScript

function MyCtrl($scope) {    
    $scope.datasets = "initial value";
}

MyCtrl.resolve = {
    datasets : function($q, $http, $location) {
        var deferred = $q.defer();

        //use setTimeout instead of $http.get to simulate waiting for reply from server
        setTimeout(function(){
            console.log("whatever");
            deferred.resolve("updated value");
        }, 2000);

        return deferred.promise;
    }
};

var myApp = angular.module('myApp', [], function($routeProvider) {
    $routeProvider.when('/', {
        templateUrl: '/editor-tpl.html',
        controller: MyCtrl,
        resolve: MyCtrl.resolve
    });
});​

http://jsfiddle.net/dTJ9N/1/

Ответы на вопрос(3)

Ваш ответ на вопрос