如何在浏览器中debuggingangular度服务
我在我的angular度应用程序中创build了一个工厂/服务。
我想在浏览器中debugging它。 有没有办法,我可以访问它的实例,并检查其function和variables的价值是什么。
angular度范围可以使用访问
angular.element(e).scope()
有没有类似的方式来访问工厂?
我相信你可以使用这样的东西:
angular.element(e).injector().get('serviceName')
由于angularjs服务是单例 ,所以在任何angular.element上执行此操作都将始终返回相同的服务实例/对象。
注入你的服务到任何控制器,然后console.log(myService);
小提琴 。
就像@bmleite说的那样,你可以使用:
angular.element( {DOM element} ).injector().get('serviceName')
您可以select想要的DOM元素(使用Chrome开发者工具上的“元素”选项卡或Firefox / Firebug上的“HTML”选项卡),然后使用$ 0指向“控制台”选项卡。
最简单的元素是你的ngApp指令。 最终的代码是:
var myService = angular.element($0).injector().get('serviceName');
那么你可以访问他所有的variables和函数:
myService.getConfig('dev');
尝试检查 Chrome扩展。
$ get('serviceName')在控制台将返回服务或工厂实例。
我不确定如何检查服务 ,但Angular Batarang是一个很棒的Chrome扩展程序,用于debuggingAngular应用程序。 可能有帮助。
https://chrome.google.com/webstore/detail/angularjs-batarang/ighdmehidhipcmcojjgiloacoafjmpfk
Batarang的有用文件:
http://www.c-sharpcorner.com/UploadFile/9c2805/getting-started-with-angularjs-batarang/