如何从routeProvider中获取resolve属性的响应?

时间:2014-09-18 14:13:16

标签: angularjs

我的例子

 app.config(['$routeProvider', function($routeProvider) {
    $routeProvider.when('/list', {
        template: '<b>{{status}}</b><input type="button" ng-click="run()" value="click">',
        controller: 'MyCtrl',


        resolve: {
            myVar: function ($http) {

                    return ($http.get('1.php')).then(function (response) {

                        //debugger 
                        var hash = response.data.b
                      return hash;
                    });
                }
             }  


    });

当我调用run时,如何在当前范围内获取属性myVar?什么时候可以访问这个变量?

谢谢你的帮助......

1 个答案:

答案 0 :(得分:2)

路由器将resolve属性的名称注入您的控制器。因此,在您的情况下,您的控制器可以接受“myVar&#39;

的依赖关系:

function MyController(myVar) {

}

myVar将等于延迟解决的任何内容。