Ste*_*hrs 17 javascript strict angularjs
你好,当我在开发者模式下运行这个项目时(grunt服务器)https://github.com/kennethlynne/generator-angular-xl一切正常但是当我在生产模式下运行它(grunt build)时我得到一个`
Uncaught SyntaxError:在严格模式代码中,函数只能在顶层声明或在另一个函数中立即声明
任何人都知道发生了什么事吗?谢谢,
PS.我发布了一个项目的链接而不是代码,因为JS在许多文件中被拆分.
Ber*_*rgi 19
这正是错误消息所说的内容:
函数只能在顶级声明或在另一个函数中立即声明
您不能将函数声明放在任何其他块中,例如if语句或for循环.
例:
'use strict';
function some() {
function okay() {
}
let x = 1;
function no_problem() {
}
if (x == 1) {
function BOOM() { // <- wrong!
}
}
}
Run Code Online (Sandbox Code Playgroud)
小智 7
正如上面提到的那样,您可以取消注释该'use strict';部分,甚至更好地更改您的函数语法
代替
function funcName (param) { }
Run Code Online (Sandbox Code Playgroud)
使用
funcName = function(param) {};
Run Code Online (Sandbox Code Playgroud)
我解决问题的方法是删除'use strict'最终缩小脚本中jquery上方的内容.另一种方法是将jQuery版本更改为没有严格错误的版本
编辑:毕竟它是版本1.11上的jQuery缩小错误,一个简单的解决方法是转到您的Grunt文件并注释掉该行
banner: "'use strict';\n"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
25445 次 |
| 最近记录: |