[英]How to access the component controller from browser console?
在angular 1.x中,使用ng-controller
,可以通过检查元素并调用angular.element($0).controller()
从浏览器控制台访问控制器实例。
这不适用于声明为:
angular.module('foo').component('bar', {
controller: class {
}
});
还有其他方法可以从控制台访问组件的控制器实例吗?
似乎最接近我们访问组件控制器的地方是:
angular.element($0).scope().$ctrl
如手册所述 ,
controller(name)-检索当前元素或其父元素的控制器。 默认情况下,检索与ngController指令关联的控制器。 如果提供名称作为camelCase指令名称,则将检索该指令的控制器(例如'ngModel')。
它是angular.element($0).controller('bar')
。
对于组件,可以缩小到
angular.element($0).controller(
$0.tagName.toLowerCase().replace(/-([a-z])/g, (_, c) => c.toUpperCase()))
);
需要一行代码。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.