为什麽node.js中的fs.writeFile函式会写入根目录呢?

目录结构
/app.js
/temp/app.js
/files

在app.js和/temp/app.js中都有以下这段

 fs.writeFile('files/temp.txt', '我的文件内容', "binary", err => {
            if (err) {
               console.log(err);
            } else {
               console.log('写入成功');
            }
        });

当我执行

node app.js

或者

node ./temp/app.js

这两个程序都很聪明地知道'files/temp.txt'指的是根目录下的files目录,但是去查看API文件时,writeFile函式并没有特别说明会去查找根目录,有人知道为什麽会自动将'files'认为是根目录吗?

阅读 3.4k
1 个回答

因为你是在根目录下执行命令的,意义不明的相对路径默认是相对于当前目录查找的。

你可以尝试:

cd /temp
node ../app.js

就会报错了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题