如何使用ui-router访问命名视图中的URL参数

时间:2014-08-14 04:03:16

标签: javascript angularjs angular-ui-router

我点击锚标记<a href="/boof?{{sid}}&{{qid}}">boofing</a>并尝试访问我的app.js中的网址参数值,但null $scope的值为$stateParam },$state

app.js

...
.state('bar', {
    url: '/boof?sid&qid',
    views: {
        '': {
            templateUrl: 'partials/a.html',
            controller: function ($scope, $stateParams, $state) {
                //not getting $scope, $stateParams, $state                
            }
        },

        'foo@bar': {
            templateUrl: 'partials/b.html',
            controller: function ($scope, $stateParams, $state) {
                //not getting  $scope, $stateParams, $state                  
            }
        },

        ...
    }
})
...

a.html

<div ui-view="foo"></div>
<div ui-view="xyz"></div>

b.html

<div>
    //stuff using data from $scope, $stateParams, $state
</div>

有人可以帮我理解为什么我会为null$scope$stateParams获取$state个值。

此外,我是否可以执行以下controller: 'myController'并访问$stateParams中的$statemyController

app.js

...
.state('bar', {
    url: '/boof?sid&qid',
    views: {
        '': {
            templateUrl: 'partials/a.html',
            controller: 'myController'                
            }
        },

        'foo@bar': {
            templateUrl: 'partials/b.html',
            controller: 'myController'                  
            }
        },

        ...
    }
})
...


myApp.controller("myController", ['$scope', '$http', '$stateParams', '$state', function($scope, $http, $stateParams, $state){

    //accessing $stateParams and $state here

} ]);

我尝试过这样做,但null$stateParams都得到了$state值。

0 个答案:

没有答案