nodejs中的文件路径和删除文件

use*_*147 11 file-io path filepath node.js express

我想要删除3个文件,list_file_to_delete但我不知道在这里放到"三个文件的路径"的路径是什么?我是否需要loop/for in/forEach函数来删除所有或只需要一个包含3条路径的字符串var string = "...a1.jpg, ...a2.jpg,...a3.jpg"?提前致谢

delete.js文件中

var list_file_to_delete = ["/images/a1.jpg", "/images/a2.jpg", "/images/a3.jpg"]
fs.unlink(path to three files here, function(err) {console.log("success")})
Run Code Online (Sandbox Code Playgroud)

这是myapp目录

 myapp
      /app
          /js
             delete.js
      /public
             /images
                    a1.jpg
                    a2.jpg
                    a3.jpg
      server.js
Run Code Online (Sandbox Code Playgroud)

Mik*_*ans 16

fs.unlink 采用单个文件,因此取消链接每个元素:

list_of_files.forEach(function(filename) {
  fs.unlink(filename);
});
Run Code Online (Sandbox Code Playgroud)

或者,如果您需要顺序但异步删除,则可以使用以下ES5代码:

(function next(err, list) {
  if (err) {
    return console.error("error in next()", err);
  }
  if (list.length === 0) {
    return;
  }
  var filename = list.splice(0,1)[0];
  fs.unlink(filename, function(err, result) {
    next(err, list);
  });
}(null, list_of_files.slice()));
Run Code Online (Sandbox Code Playgroud)

  • 相信我迈克.他们是数百人刚刚开始学习NodeJS或任何其他技术.只要提供的信息有效,拥有广泛的意见和备选方案将节省他们的调试时间.如果一个问题是3岁,我认为这不重要.关于主题的新信息总是好事. (4认同)
  • 我发现ALLJs评论有用;) (2认同)