nodejs 怎么获取项目的根目录路径?
nodejs 怎么获取项目的根目录路径?
11 回复
看你如何理解项目的根目录,如果你认为是package.json所在的目录,那么就一路向上找,判断是否存在package.json
你遇到什么问题,使你想找到项目的根目录?
@stonephp 我想在根目录下创建一个文件夹,看样子还要手动编码实现了?这样的话 如果极端点,根目录没有package.json要怎么搞?
__dirname
可以找到现在执行的文件的位置,这方面倒是没怎么弄过,根据这个变量回给的路径基础上回退?
@scarletmu 实在不行,也只能这样的思路了,能不能有更好的方法
@napster99 你的根目录没有任何特征那就找不到呀。
是说的process.cwd()
这个不。
我觉得,弄个配置文件项来说明这个事儿,配置文件位置相对固定,结合__dirname
只能手动编码实现了
function getRootDir() {
let rootDir = curDir;
return co(function *() {
while(true) {
if(yield isExitFile(rootDir, 'package.json')) {
break;
}
rootDir = path.join(rootDir, up);
}
return rootDir;
})
}
process.cwd()
有个包叫app-root-path,用了很多年了。
我使用了一个全局变量 __home