首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >fs.rmdir递归在app打包后停止工作

fs.rmdir递归在app打包后停止工作
EN

Stack Overflow用户
提问于 2020-04-10 22:23:40
回答 1查看 310关注 0票数 0

在使用Zeit/pkg打包app之后,fs.rmdir递归停止工作

以下脚本适用于2种情况:

  1. 脚本是从节点直接作为节点test.js运行的,并且运行完美的
  2. ,脚本被运行打包,tmpDir是空的。(大多数删除/注释fs.appendFileSync行)

代码语言:javascript
复制
    const os = require('os');
    const fs = require('fs');
    const path = require('path');

    var tmpDir = path.join(os.tmpdir(), 'test');
    if(!fs.existsSync(tmpDir)){
        fs.mkdirSync(tmpDir);
        fs.appendFileSync(path.join(tmpDir, 'message.txt'), 'data to append');
    }

    fs.rmdir(tmpDir, {recursive: true}, function(err){
        if(err) throw err;
        console.log('finished');
    });

否则,它将返回以下错误:

代码语言:javascript
复制
internal/validators.js:117
    throw new ERR_INVALID_ARG_TYPE(name, 'string', value);
    ^

TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string. Received an instance of Buffer
    at validateString (internal/validators.js:117:11)
    at Object.dirname (path.js:583:5)
    at isRootPath (pkg/prelude/bootstrap.js:168:26)
    at fs.readdir (pkg/prelude/bootstrap.js:850:18)
    at _rmchildren (internal/fs/rimraf.js:130:3)
    at internal/fs/rimraf.js:117:16
    at FSReqCallback.oncomplete (fs.js:154:23) {
  code: 'ERR_INVALID_ARG_TYPE'
}

在node12上测试,在Windows 10上测试13。

有人知道解决这个问题的办法吗?

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2020-04-11 02:24:55

最后,我通过直接包含和使用rimraf包来解决这个问题。

还有一个Del包,为了一个更简单的解决方案,这里有一些代码

代码语言:javascript
复制
var fs = require('fs');
var deleteFolderRecursive = function(path) {
  if( fs.existsSync(path) ) {
    fs.readdirSync(path).forEach(function(file,index){
      var curPath = path + "/" + file;
      if(fs.lstatSync(curPath).isDirectory()) { // recurse
        deleteFolderRecursive(curPath);
      } else { // delete file
        fs.unlinkSync(curPath);
      }
    });
    fs.rmdirSync(path);
  }
};
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61149538

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档