我开始学习JavaScript了.在这样做时,我厌倦了将我的JavaScript代码嵌入到HTML文档中,以便在浏览器中运行它.我认为在Sublime的控制台中运行我的脚本会很好,所以我不必离开编辑器.因此我试图创建一个JavaScript构建系统,因为Sublime没有附带.
我的想法是使用Node.js作为JavaScript解释器.我用Linux Mint的包管理器安装它.据我所知它运作得很好.假设我有一个包含以下JavaScript代码行的test.js文件:
console.log("Hello World");
我跑的时候
nodejs /path/to/test.js在我的控制台中,我得到:
Hello World但是,我不认为这与Sublime一起使用.我通过单击工具/构建系统/新构建系统创建了一个新的构建系统.然后我键入以下行:
{
"cmd": ["nodejs", "$file"]
} 据我所知,这一行是以下命令的JSON表示: nodejs /path/to/current/file.ext就像我说的,如果我在控制台中手动运行它,它的工作正常.如果我在Sublime中按F7,这是Build的快捷方式,Sublime的控制台就会显示出来.虽然它是空的.
还有一件奇怪的事情.即使Sublime控制台的(不存在的)输出指示构建系统未配置为正确使用Node.js,我在意外尝试运行非JS文件时显示了一些Node.js错误,例如Node.sublime-build文件.这是Sublime控制台中显示的输出:
/home/baerenfaenger/.config/sublime-text-2/Packages/User/Node.sublime-build:2
"cmd": ["nodejs", "$file"]
^
module.js:434
var compiledWrapper = runInThisContext(wrapper, filename, true);
^
SyntaxError: Unexpected token :
at Module._compile (module.js:434:25)
at Object..js (module.js:464:10)
at Module.load (module.js:353:32)
at Function._load (module.js:311:12)
at Array.0 (module.js:484:10)
at EventEmitter._tickCallback (node.js:190:39)
[Finished in 0.1s with exit code 1]
那么为什么在执行实际的JavaScript代码时我没有得到任何输出?先感谢您!