有没有办法列出为给定的角度模块定义的所有指令和控制器?例如,假设我在’main’模块中定义了三个控制器(即angular.module(’main’)。controller(’MainCtrl’,function(){…})。是否有办法获取列表的那三个控制器?
嗯,真的很难,我认为不是一件好事,但是:
var app = angular.module('MyApp', []); console.log(app._invokeQueue[0][2][1]);
_invokeQueue是一个数组,如果您对每个获得[0] [2] [1]的条目执行此操作,则会在模块中看到每个提供程序的名称。
如果单独查看_invokeQueue,则会看到很多类似提供程序名称的内容,如下所示,但也提供了其类型(指令,控制器等);
但是您会觉得这是一件棘手的事情,不是一个好习惯,一个坏习惯,但仍然很有趣。
不要在生产中使用它!