Sublime Text需手动配置Node.js构建系统;创建JSON格式的.sublime-build文件,指定cmd为[“node”, “$file”]并设working_dir为”$file_path”,Windows用户若PATH未配置则需用node.exe绝对路径。
Sublime Text 本身不内置 Node.js 运行环境,必须通过构建系统(Build System)手动配置;直接按 Ctrl+B(Windows/Linux)或 Cmd+B(macOS)默认不会执行 JS 文件,除非你已创建并选中了正确的构建配置。
如何创建 Node.js 构建系统
Sublime 的构建系统本质是一个 JSON 配置文件,告诉编辑器用什么命令、在什么路径下运行脚本。Node.js 构建的关键是正确指定 node 可执行文件路径和待运行的 JS 文件。
- 菜单栏选择 Tools → Build System → New Build System…
- 替换默认内容为以下配置(注意:Windows 和 macOS/Linux 路径写法不同):
{
"cmd": ["node", "$file"],
"selector": "source.js",
"shell": true,
"working_dir": "$file_path"
}
保存为 NodeJS.sublime-build(文件名任意,但后缀必须是 .sublime-build)。Windows 用户若提示 'node' is not recognized,说明系统未将 Node.js 加入 PATH,此时需改用绝对路径,例如:"cmd": ["C:\\Program Files\\nodejs\\node.exe", "$file"]。
为什么 $file 不能换成 $file_name 或 $file_base_name
$file 是唯一包含完整路径的变量,而 node 命令必须在 JS 文件所在目录(或指定路径)执行,否则模块加载(如 require('./utils'))会失败。用 $file_name 仅传入文件名(如 index.js),Node.js 会在 Sublime 启动目录(通常是用户主目录)下找该文件,大概率报错 Error: Cannot find module。
-
$file→/Users/you/project/app.js✅ -
$file_name→app.js❌(无路径,执行位置错误) -
$file_base_name→app❌(连扩展名都丢了)
运行带参数的 JS 脚本怎么配
原生构建系统不支持交互式输入参数,但可通过修改 cmd 字段硬编码或使用输入框变通。最稳妥的做法是临时改构建配置: