我正在使用 angular-ui/ui-router 并具有定义为在状态更改时呈现的隔离范围的指令/组件。
$stateProvider
.state('about', {
url: '/about',
template: '<about></about>'
})
.state('blog', {
url: '/blog',
template: '<blog></blog>'
})
我的主页是一个指令,它在其控制器中加载具有所有权限的用户
app.directive('main', function() {
return {
...
template: "<div><header></header><div ui-view></div></div>",
controller: [..., function(...) {
$scope.user = // $http load user
}]
);
当导航到不同的状态时,我希望将用户传递给所有 ui-view 指令/组件。但是,如果没有在resolve
每次状态更改时加载用户或使用$rootScope
我正在寻找类似于以下内容的内容,其中用户是来自父范围的用户。
$stateProvider
.state('about', {
url: '/about',
template: '<about user="user"></about>'
})
.state('blog', {
url: '/blog',
template: '<blog user="user"></blog>'
})
知道如何做到这一点吗?