You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Node.js的minify压缩脚本时遇“Unexpected identifier tryToCatch”错误求助

解决minify工具执行时的ES模块语法错误

问题重现

执行压缩命令:

minify script.js > script.min.js

触发错误:

/node_modules/bin/minify.js:3 import "tryToCatch" from "try-to-catch" Unexpected identifier

原因

该错误源于Node.js环境无法解析ES模块的import语法:要么你的Node版本过低(低于v14.13.0),要么minify工具的CLI脚本未正确配置ES模块标识,导致Node将其当作CommonJS模块处理,从而抛出语法异常。

可行解决方案

  • 升级Node.js版本:切换到v14.13.0及以上的LTS版本(如v18、v20),新版本默认支持ES模块语法,无需额外配置。
  • 临时修改工具配置:找到node_modules/minify/package.json,添加"type": "module"字段(不推荐长期使用,依赖更新后会失效)。
  • 指定模块模式运行:针对低版本Node,用实验性模块参数执行脚本:
    node --experimental-modules node_modules/minify/bin/minify.js script.js > script.min.js
    
  • 替换压缩工具:改用兼容CommonJS的uglify-js:
    1. 全局安装:npm install uglify-js -g
    2. 执行压缩:uglifyjs script.js -o script.min.js

内容的提问来源于stack exchange,提问作者Paul T. Rykiel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 19:50:36