你好我有类似的东西
<body ng-app="app" id="ng-app" ng-controller="MasterCtrl">
和一些需要主控制器来解析某些数据的视图
<div ui-view></div>
即时通讯使用ui-router 如何将解析传递给masterctrl? 如果我尝试在&#39; /&#39;在状态配置中,当我向孩子们求助时,我不会得到主解决
答案 0 :(得分:0)
所以,你正在解决控制器中的某些事情.. [让我们使用'用户']
ASP.NET WebForms and MVC
并且它工作得很好..但现在你想解决主控制器中的用户..
对我来说有用的是:像工厂一样:
.state('myCoolState', {
url: baseURL + 'coolState/:id',
templateUrl: baseURL + 'Scripts/Templates/CoolStateView.html',
controller: 'coolStateController',
title: 'MyCoolState.com',
resolve: {
user : function (userService) {
return userService.getUser();
}
}
})
我只是将我的userService注入主控制器
.factory("userService", function ($q, $http, baseURL) {
return {
getUser: function () {
var deferred = $q.defer();
$http({
url: baseURL + 'api/User/',
method: "GET"
})
.then(function (result) {
deferred.resolve(result.data.data);
});
return deferred.promise;
}
}
});
我的主控制器定义为
MasterCtrl.$inject = ['$scope', '$location', '$rootScope', '$state', '$http', 'baseURL', 'userService'];
在masterCtrl定义之外解析用户会很好..所以它看起来更干净..据我所知你不能这样做。