AngularJS:绑定中是否存在拼写错误的调试模式?

时间:2013-10-11 14:49:12

标签: angularjs

我只是浪费了半个小时去寻找原来的......

<select.... data-ng-options="x as x.name for x in customerController_clipped.options"

而不是

<select.... data-ng-options="x as x.name for x in customerController_Clipped.options"

也就是说,一个字符错字 - 在这种情况下,是'剪辑......'而不是'剪辑......' 当然,当它被隔离在上面时很容易看到 - 但是想想这里面的大量HTML内容,你现在知道我为什么要问:

有没有办法让AngularJS报告绑定名称中的任何失败,以便于调试?这种故障的简单控制台记录就足够了,而不是让我们的组件空了的静默操作......

1 个答案:

答案 0 :(得分:2)

我无法看到内置任何内容来执行此操作,但是您可以使用angular.js作为功能请求加注,或尝试编写拉取请求以在$parseProvider中添加选项?如果你想这样做,我现在唯一可以看到的方法是改变$parse服务中的代码来解释任何表达式。

plunked进行了快速测试,看看它有多容易。原始代码来自角度1.1.5。在angular-1.1.5.js文件中搜索ANDYMOD以查看我编辑过的代码。每当{x.y.z'表达式的console.logy部分未定义或为null时,这基本上会添加z,而不是忽略它。

这绝不是一个具有生产价值的解决方案,并且在您想要使用ng-csp时不起作用,但它表明至少可以做一些事情。如果您需要再次测试,也许你可以将这几行分开......