首页 > 解决方案 > Grunt 未能建立在一些有效的 js 语法上

问题描述

我正在用 grunt 做一个遗留项目。我从package.json相信版本是0.4.5,但我没有做太多前端工作,所以可能在那里犯了错误。

本质上,我正在尝试从具有一些动态键值对的 JavaScript 构建 JSON 对象。

我正在做这个

var params = {
    [localObject.propertyValue]: localObject.otherPropertyValue,
    "dateRange": {
        "start": localObject.startPropertyValue,
        "end": localObject.endPropertyValue
    }
}

这完美地工作。我将它发布到终点并得到我想要的结果,我整个下午都在玩它

grunt --profile=devServer

但是,当我这样做时,grunt build我会失败。它围绕计算的属性名称 - [localObject.propertyValue]。如果我把它排除在外,它就可以毫无问题地构建。

这是错误。我正在努力思考是否有一种不同的方式来动态添加密钥,我知道没有人会希望我更新 grunt。我只是想知道是否有人可以提供帮助?

JS_Parse_Error {   message: 'Unexpected token: name
(scheduleSearchController)',   filename:
'../../.tmp/concat/js/app.js',   line: 34463,   col: 6,   pos:
1254651,   stack:    'Error\n    at new JS_Parse_Error
(/grunt-contrib-uglify/node_modules/uglify-js/lib/parse.js:196:18)\n  
at js_error
(/node_modules/grunt-contrib-uglify/node_modules/uglify-js/lib/parse.js:204:11)\n
at croak
(/node_modules/grunt-contrib-uglify/node_modules/uglify-js/lib/parse.js:674:9)\n
at token_error
(/node_modules/grunt-contrib-uglify/node_modules/uglify-js/lib/parse.js:682:9)\n
at unexpected
(/node_modules/grunt-contrib-uglify/node_modules/uglify-js/lib/parse.js:688:9)\n
at as_property_name
(/node_modules/grunt-contrib-uglify/node_modules/uglify-js/lib/parse.js:1276:13)\n
at
/node_modules/grunt-contrib-uglify/node_modules/uglify-js/lib/parse.js:1230:24\n
at
/node_modules/grunt-contrib-uglify/node_modules/uglify-js/lib/parse.js:721:24\n
at expr_atom
(/node_modules/grunt-contrib-uglify/node_modules/uglify-js/lib/parse.js:1181:35)\n
at maybe_unary
(/node_modules/grunt-contrib-uglify/node_modules/uglify-js/lib/parse.js:1357:19)'
}
>> Uglifying source .tmp/concat/js/app.js failed. Warning: Uglification failed.

标签: javascriptgruntjs

解决方案


推荐阅读