如何通过控制台调试AngularJS中通过controllerAs绑定到控制器的变量

How can I debug variables by console which bind to the controller by controllerAs in AngularJS

本文关键字:绑定 controllerAs 控制器 变量 控制台 何通过 调试 AngularJS      更新时间:2024-04-19

通常,当我使用控制器时,我会将所需的数据绑定到$scope,以便从标记中访问它们。但是当我使用controllerAs时,数据应该附加到控制器中的"this"

所以"this.foo = 'bar'"而不是"$scope.foo = 'bar'"

但是,我如何使用开发人员控制台从浏览器调试数据呢?通常我有"AngularJS Batarang"插件,我可以打印当前范围内的所有内容,但我不知道如何打印绑定到控制器的数据。

实际使用$scope的方式与此相同;controllerAs的名称将出现在您的$scope上。

因此,如果controllerAs被命名为"myController":

  • 开放式开发人员工具
  • 在页面上选择"检查元素"。您的控制台窗口现在可以访问该元素的$scope(多亏了Batarang)
  • 现在,您可以键入$scope.myController.foo来访问属性

每次在DOM中选择不同的元素时,控制台窗口中的$scope对象都会引用合适的元素。

如果我正确地回答了你的问题,你可以使用调试绑定到控制器的值

 var ctrl = ele.controller();

这篇文章有一篇关于调试的非常有用的文章。