NodeJS “错误:ENOENT:没有这样的文件或目录,mkdir”在部署的网站

xvw2m8pv  于 2023-04-29  发布在  Node.js
关注(0)|答案(1)|浏览(233)

在我的网站我需要创建一个文件夹,并保存一些文件,我的代码工作,只要我运行它在本地,但一旦我dopyed渲染我得到这个错误

Error: ENOENT: no such file or directory, mkdir '/opt/render/desktop/data/filename
[...]
Apr 24 07:37:41 PM    syscall: 'mkdir',
Apr 24 07:37:41 PM    code: 'ENOENT',
Apr 24 07:37:41 PM    path: '/opt/render/desktop/data/filename

这是我用来创建文件夹的代码:

const fs = require("fs");

createFolder = (folderName) => {
  var dir = require("path").join(
    require("os").homedir(),
    `desktop/data/${filename}`
  );
  if (!fs.existsSync(dir)) {
    fs.mkdirSync(dir);
  }
};

我认为问题可能是路径/opt/render/desktop/data/filename。我该怎么解决呢?

lnvxswe2

lnvxswe21#

看起来你试图创建一个完整的路径,而不仅仅是一个单级文件夹。正在尝试传递recursive parameter: fs。mkdirSync(dir,{ recursive:true });. 另外,我想你可能是想在路径中指定folderName而不是filename? 最后一件事我建议将const path = require('path');移到文件的顶部,而不是在函数中动态地要求它。os`也是如此。

相关问题