开始探索node.js并面临以下问题
假设我有3个文件:start.js,core / core.js和core / child.js
core.js使用具有这些设置的群集创建子进程(core / child.js)
cluster.setupMaster({
exec: './core/child.js'
});
core.js和child.js在同一个文件夹中,但是如果我使用
我会收到错误(找不到)exec: './child.js'
在文档中没有找到任何类似内容,但是
require('./child.js')
完美无缺。如果路径有点长,我没有问题,只是试图理解为什么我不能使用路径本地到core.js
答案 0 :(得分:1)
require()
相对于当前代码文件的位置有效,但Node.js中的大多数其他操作(包括启动其他进程)都与当前工作目录process.cwd()
相关。
如果需要生成相对于当前文件的路径,可以在运行时使用每个模块中可用的__dirname
变量。
var childPath = require('path').join(__dirname, 'child.js');