如何找到JS_Parse_Error的源代码?

时间:2013-07-30 15:46:50

标签: javascript node.js express

我正在运行一个Express应用程序,我得到一个JS_Parse_Error。我无法弄清楚为什么。我基本上已经注释掉了我编写的所有新代码,但我仍然遇到错误。有没有办法找出Javascript行给我的错误?

Error
    at new JS_Parse_Error (/home/charlie/Projects/chat/node_modules/jade/node_modules/with/node_modules/uglify-js/lib/parse.js:196:18)
    at js_error (/home/charlie/Projects/chat/node_modules/jade/node_modules/with/node_modules/uglify-js/lib/parse.js:204:11)
    at croak (/home/charlie/Projects/chat/node_modules/jade/node_modules/with/node_modules/uglify-js/lib/parse.js:636:9)
    at token_error (/home/charlie/Projects/chat/node_modules/jade/node_modules/with/node_modules/uglify-js/lib/parse.js:644:9)
    at expect_token (/home/charlie/Projects/chat/node_modules/jade/node_modules/with/node_modules/uglify-js/lib/parse.js:657:9)
    at expect (/home/charlie/Projects/chat/node_modules/jade/node_modules/with/node_modules/uglify-js/lib/parse.js:660:36)
    at expr_atom (/home/charlie/Projects/chat/node_modules/jade/node_modules/with/node_modules/uglify-js/lib/parse.js:1112:17)
    at maybe_unary (/home/charlie/Projects/chat/node_modules/jade/node_modules/with/node_modules/uglify-js/lib/parse.js:1287:19)
    at expr_ops (/home/charlie/Projects/chat/node_modules/jade/node_modules/with/node_modules/uglify-js/lib/parse.js:1322:24)
    at maybe_conditional (/home/charlie/Projects/chat/node_modules/jade/node_modules/with/node_modules/uglify-js/lib/parse.js:1327:20)

6 个答案:

答案 0 :(得分:4)

这可能与你无关,但是我收到了同样的错误信息 - 我不得不说 - 我的问题是一个逗号丢失了。

注意在ng-show之前缺少逗号...

.container(itemscope, itemtype='http://schema.org/Person' ng-show='user')
   .row

答案 1 :(得分:1)

我对一组键/值对有同样的问题。

我的代码看起来像这样:

- var links = {stack-overflow: "//stackoverflow.com/users/2479481/"}

显然,如果不将密钥包装在引号中,则不能在密钥中使用连字符

所以,要解决问题,你可以做任何一个

- var links = {"stack-overflow": "//stackoverflow.com/users/2479481/"}

- var links = {stackoverflow: "//stackoverflow.com/users/2479481/"}

答案 2 :(得分:1)

可能存在问题的另一件事(我的问题是什么)是正则表达式。确保你创建这样的正则表达式   新的RegExp(“/ [^] + / g”) 代替   / [^] + / g

也可以使用var而不是let。

希望这有助于某人,

uglify-js版本1.2.6

答案 3 :(得分:0)

就我而言,需要移除一对花括号:

AlertService.success(alertKey,
    param1
);

而不是

AlertService.success(alertKey, {
    param1
});

太糟糕了,uglify-js有时候并没有指出问题出在哪里......

答案 4 :(得分:0)

在我的情况下,以下代码导致了问题

loc8rData.locationByCoords(lat, lng)
    .then(
        response => {
            vm.message = response.data.length > 0 ? "" : "No locations found";
            vm.data = { locations: response.data };
        },
        e => {
            vm.message = "Sorry, something's gone wrong ";
            console.log(e);
        }
    );

要确切地说明问题,uglify无法解析"=>"

答案 5 :(得分:0)

当我尝试使用对象简写符号时,我收到了此错误。