【npm依赖包介绍】借助rimraf依赖包,在用npm run build构建项目时,清空dist目录,避免新旧混合

文章目录

背景

npm run build时,一般都会清空项目中已有的dist目录再构建,避免新旧混合。

如何使用

可以简单使用rimraf这个npm依赖包。

目前rimraf的最新版已经到v6了。所以在安装时,要注意下版本问题:

v5 to v6

Require node 20 or >=22

Add --version to CLI

v4 to v5

There is no default export anymore. Import the functions directly using, e.g., import { rimrafSync } from 'rimraf'.

因为我用的nodejs的版本是18,所以用"rimraf": "^5.0.5", 就好了。

1、在项目中安装

bash 复制代码
npm i rimraf@5 --save-dev

2、配置package.json

json 复制代码
"scripts": {
    "clean": "rimraf dist",  // 新增,表示删除dist目录
    "test": "echo \"Error: no test specified\" && exit 1",
    "dev": "vite",
    "build": "npm run clean && vite build"  //新增npm run clean && 
  },

3、在项目构建时,直接用

bash 复制代码
npm run build

此时会先执行npm run clean,后构建。

附上rimraf的介绍和说明

rimraf 是一个用于删除文件和文件夹的 Node.js 包。它的名字来源于 Unix 命令 rm -rf,其中 rm 是删除命令,-rf 选项表示递归删除文件和文件夹,并且不提示确认。

主要作用
  • 递归删除文件夹:rimraf 可以递归地删除整个文件夹及其内容,包括子文件夹和文件。
  • 跨平台兼容:rimraf 在 Windows、macOS 和 Linux 等不同操作系统上都能正常工作,解决了 Node.js 自带的 fs.rmdirfs.unlink 在 Windows 上删除非空文件夹时的限制。
  • 异步和同步操作:rimraf 提供了异步和同步两种删除方式,方便在不同场景下使用。
使用场景
  • 清理构建目录:在构建项目之前,通常需要清理旧的构建输出目录,rimraf 可以快速删除这些目录。
  • 删除临时文件:在开发过程中,可能需要删除一些临时生成的文件或文件夹。
  • 卸载或重置时清理:在卸载或重置应用程序时,可以使用 rimraf 清理相关文件和文件夹。
安装

你可以通过 npm 安装 rimraf

bash 复制代码
npm install rimraf --save-dev
使用示例
异步删除
javascript 复制代码
const rimraf = require('rimraf');

rimraf('/path/to/directory', function (err) {
  if (err) {
    console.error('删除失败', err);
  } else {
    console.log('删除成功');
  }
});
同步删除
javascript 复制代码
const rimraf = require('rimraf');

try {
  rimraf.sync('/path/to/directory');
  console.log('删除成功');
} catch (err) {
  console.error('删除失败', err);
}

参考资料

https://www.npmjs.com/package/rimraf


如果你在web前端开发、面试、前端学习路线有困难可以在下方加我名片。

免费答疑,行业深潜多年的技术牛人帮你解决bug。

并可提供web前端开发,网站开发、技术咨询、答疑、直播讲座等服务。

祝你能成为一名优秀的WEB前端开发工程师!

相关推荐
虹科网络安全3 小时前
艾体宝洞察|NPM供应链攻击:复杂的多链加密货币攻擊渗透流行软件包
前端·npm·node.js
AIFarmer21 小时前
npm : 无法将“npm”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确, 然后再试一次。
前端·npm·node.js
__zRainy__1 天前
patch-package 打补丁方案详解
npm·node.js
hashiqimiya1 天前
npm查看依赖
前端·npm·node.js
夏暖冬凉2 天前
npm发布流程(记录遇到的问题)
前端·npm·node.js
weixin_461769403 天前
npm create vue@latest 错误
前端·vue.js·npm
MadeInSQL5 天前
npm : 无法加载文件 C:\Program Files\nodejs\npm.ps1,因为在此系统上禁止运行脚
npm
cypking5 天前
npm 依赖包版本扫描提示插件Version Lens
前端·npm·node.js