我正在尝试使用angular,它与我的$ http,控制器和视图完美配合。但是当我看到firebug调试器时,在脚本选项卡“angular.js line 12502> function”中会自动添加多次。里面显示如下:
s = eso(s, fe);
l = eso(l, fe);
if(s == null) return undefined;
s=eso(((l&&l.hasOwnProperty("getAssess"))?l:s).getAssess, fe);
return s;
我正在使用的版本 / ** * @license AngularJS v1.3.6 *(c)2010-2014 Google,Inc。http://angularjs.org *许可证:麻省理工学院 请帮助我做错了。
快照:
* /
答案 0 :(得分:2)
这不是一件可怕的事。它只是在Mozilla的萤火虫中可见。让我告诉你这个代码背后的原因 AngularJs在运行时为存储对象中的信息的变量创建动态函数。但这只是在第一次运行时发生的。之后,这些方法可以从s或l收集信息(意味着范围或本地)。
这些行正在更改为
版本Angularjs v1.3.1将显示在第12283行,因为此代码在此处用于创建函数。
/* jshint -W054 */
var evaledFnGetter = new Function('s', 'l', code); // s=scope, l=locals
/* jshint +W054 */
Angularjs v1.3.6将在第12502行显示为此行
/* jshint -W054 */
var evaledFnGetter = new Function('s', 'l','eso','fe' code); // s=scope, l=locals, eso=ensureSafeObject
/* jshint +W054 */
Angularjs v1.3.7在Find here change sheet
上有更多关于此功能的工作一系列字段访问者应使用单个getterFn
通过查看此Change Sheet
保持更新