假设我有这个目录结构
/Project
/node_modules
/SomeModule
bar.js
/config
/file.json
foo.js
Run Code Online (Sandbox Code Playgroud)
-
foo.js:
require('bar');
Run Code Online (Sandbox Code Playgroud)
-
bar.js:
fs.readdir('./config'); // returns ['file.json']
var file = require('../../../config/file.json');
Run Code Online (Sandbox Code Playgroud)
是否正在包含readdir从文件中工作(foo.js)并且需要来自它被调用的文件(bar.js)的工作?
或者我错过了什么?谢谢
Mar*_*ema 13
由于丹D.表示,fs.readdir使用process.cwd()作为起点,而require()用途__dirname.如果你愿意,你可以随时从一个路径解析到另一个路径,获得绝对路径都会以相同的方式解释,如下所示:
var path = require('path');
route = path.resolve(process.cwd(), route);
Run Code Online (Sandbox Code Playgroud)
这样,如果使用__dirname它作为起始点它将忽略process.cwd(),否则它将使用它来生成完整路径.
例如,假设process.cwd()是/home/usr/node/:
route是./directory,它将成为/home/usr/node/directoryroute是/home/usr/node/directory,它将保持原样我希望它适合你:D
| 归档时间: |
|
| 查看次数: |
8701 次 |
| 最近记录: |