fs、path

删除目录

  1. // 删除目录,将传递的目录也给删除
  2. function delDir(path) {
  3. let files = [];
  4. if (fs.existsSync(path)) {
  5. files = fs.readdirSync(path);
  6. files.forEach((file, index) => {
  7. let curPath = path + "/" + file;
  8. if (fs.statSync(curPath).isDirectory()) {
  9. delDir(curPath); //递归删除文件夹
  10. } else {
  11. fs.unlinkSync(curPath); //删除文件
  12. }
  13. });
  14. fs.rmdirSync(path);
  15. }
  16. }
  17. /* 清空下packages的内容,会保留packages目录存在 */
  18. const packagesPath = path.join(__dirname, "../packages");
  19. function cleanupPackages(packagesPath) {
  20. const isExistPackages = fs.existsSync(packagesPath);
  21. // 存在则清除
  22. if (isExistPackages) {
  23. delDir(packagesPath);
  24. }
  25. fs.mkdirSync(packagesPath);
  26. }
  27. cleanupPackages(packagesPath);