Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 使用Electron JS制作文件夹_Node.js_Electron_Electron Forge - Fatal编程技术网

Node.js 使用Electron JS制作文件夹

Node.js 使用Electron JS制作文件夹,node.js,electron,electron-forge,Node.js,Electron,Electron Forge,我正在使用Electron和Electron Forge构建一个桌面下载应用程序。在调试模式下npm start我可以毫无问题地创建文件夹。项目打包后,我在OSX上运行.dmg,当应用程序创建文件夹时,我会收到一个错误 错误- 未捕获异常: 错误:enoint:没有这样的文件或目录,mkdir'/Users/folder/dl2/test2' 错误(本机) 在Object.fs.mkdirSync(fs.js:922:18) 创建文件夹的代码 if (!fs.existsSync(dirpath

我正在使用Electron和Electron Forge构建一个桌面下载应用程序。在调试模式下
npm start
我可以毫无问题地创建文件夹。项目打包后,我在OSX上运行.dmg,当应用程序创建文件夹时,我会收到一个错误

错误-

未捕获异常: 错误:enoint:没有这样的文件或目录,mkdir'/Users/folder/dl2/test2' 错误(本机) 在Object.fs.mkdirSync(fs.js:922:18)

创建文件夹的代码

if (!fs.existsSync(dirpath)) {
   fs.mkdirSync(path.dirname(dirpath), { recursive: true });
}

下面回答的问题是一个节点问题,我在这里找到了答案-

我用了下面的街区

function mkdirp(dir) {
  if (fs.existsSync(dir)) { return true }
  const dirname = path.dirname(dir)
  mkdirp(dirname);
  fs.mkdirSync(dir);
}
mkdirp(dirpath);

您能否在调试和生产应用程序中输出并比较
dirpath
的内容。它可能不同于您在生产中所期望的。您是指
dirpath
的变量值,它们匹配。我正在使用对话框选择文件夹。调试或编译都不需要应用程序路径