我正在尝试使用path
模块从当前位置文件位置向上遍历到另一个文件夹,其中有一个我正在尝试加载的文件。尽管努力使用path.join()
,第一个值是当前文件位置__dirname
,第二个值使用目录更改,../../config/*file*
我看到任何文件遍历。我看到方法中附加了第二个条件,而不是我添加的每个级别../
.有没有更好的方法来遍历目录,有谁知道我当前的设置可能有什么问题?
目录布局
/root
/app
/controllers
/app
/activity-feed (Current Directory)
feed.js (Route logic)
/config
pk-*unique-id*.pem (File trying to be loaded)
/app
与/config
是同一层,这是从项目根目录向下的第一个文件夹
这是我尝试向上遍历然后向下遍历到此文件:
var cfPK = path.join(__dirname + "../../../config/pk-*unique-id*.pem");
这是错误:
Error: ENOENT: no such file or directory, open '/Users/user/Desktop/Projects/node/my-app/app/controllers/app/activity-feed../config/pk-*unique-id*.pem'
您正在调用path.join
并连接路径,而不是连接:
var cfPK = path.join(__dirname + "../../../config/pk-*unique-id*.pem");
这应该是:
var cfPK = path.join(__dirname, "../../../config/pk-*unique-id*.pem");
记下逗号而不是 +
您可以使用以下命令获取当前工作目录
process.env.PWD
然后使用
path.join(process.env.PWD,/..(;