javascript - 意外 token : on compressing js file

标签 javascript

我尝试压缩 JavaScript 文件,同时使用 http://jscompress.com和“uglifyjs”(uglifyjs main.js --compress --mangle > main.min.js),但我收到以下错误:

File main.js: Unexpected token: name «sidebarSubcategory», expected: punc «;» (line: 17, col: 8)

main.js中我有以下函数:

function openSubcategory(el, id) {
  let sidebarSubcategory = document.getElementById("sidebar-subcategory-" + id);
  if (el.innerHTML === '+') {
    el.innerHTML = '-';
    sidebarSubcategory.setAttribute('style', 'display: block;');
  } else {
    el.innerHTML = '+';
    sidebarSubcategory.setAttribute('style', 'display: none;');
  }
}

我不明白。

最佳答案

您使用的压缩工具不支持新语法。将 let 更改为 var 或选中“使用 ecmascript 2019”复选框将解决您的问题。

至于 uglifyjs,您可以使用该工具,它来自 uglifyjs 的同一开发人员,但适用于 es6 语法:

https://www.npmjs.com/package/uglify-es

关于javascript - 意外 token : on compressing js file,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56702363/

相关文章:

javascript - 我应该如何调用这个数组输出?

javascript - 通过 Eval 将多个参数传递给 Javascript 函数

javascript - Uncaught ReferenceError : IndexRoute is not defined - How do I resolve this error to use IndexRoute in react-router?

javascript - 更改嵌套 ng-repeat 中的 $http 参数

javascript - 如何在上传前预览动态上传的图片?

javascript - 为什么 hapi.js 很特别?

javascript - 捕获内容安全策略 (CSP) 错误

javascript - 根据选择动态加载 i18n Angular 语言环境

javascript - 在现有脚本中包括使用正则表达式映射方法的 .replace 函数

php - 使用复选框选中所有复选框