我是Angular的新手,但我正在研究一个服务类,我需要通过名称来获取对Controller的引用。
此特定服务用于导航,并在$stateChangeStart
上设置监听器:
var NavServiceFactory = function($state, $rootScope) {
var NavService = function() {
this.orgStates = {};
this.pageTracker = {};
var self = this;
$rootScope.$on('$stateChangeStart', function(event, toState, toParams, fromState) {
// This is where I need to get the controller from the fromState
});
};
var proto = NavService.prototype;
// ... //
return new NavService();
};
app.factory('navService', NavServiceFactory);
module.exports = app;
我标记了我需要到达控制器的位置。目的是我想调用一个方法来查看用户是否正确填写了一些必需的数据,这样我就可以将该导航项标记为“已完成”。我在需要控制器的地方做了标记。
我所尝试的是将$controller
注入服务和服务工厂,但似乎根本不起作用。目标是尝试this并提供一种方法,页面内容的控制器可以确定页面导航的“完成性”。是否有可能将$ controller作为注入依赖项进入我的服务?我相信,我们正在使用Angular 1.4。