NPM 脚本简介
NPM是一个节点包管理器。它是世界上最大的软件注册中心。该注册表包含超过 800,000 个代码包。许多开源开发人员使用 npm 来共享软件。许多组织还使用 npm 来管理私有开发。
“npm scripts” 是package.json文件的 scripts 字段中的条目。 scripts 字段包含一个对象,您可以在其中指定要公开的各种命令和脚本。这些可以使用以下命令执行 -
npm run
NPM 脚本用于自动化任务,例如缩小 CSS、丑化 JavaScript、构建项目。 NPM 脚本用途广泛且简单,通过学习更少的工具,我们可以在我们的 Web 项目中自动执行任务。
例如,这是我们的 package.json 文件。
{
"name": "example",
"scripts": {
"test": "echo 'hello world'"
}
}
它可以使用以下命令运行 -
npm run test
当我们有重复的任务并且我们必须自动化它们时,这非常有用。
另一个 NPM 脚本中的 NPM 脚本:
{
"name": "example",
"scripts": {
"start": "npm run lite",
"lite": "lite-server"
}
}
因此,通过使用 npm start,它将运行另一个命令 npm run lite,lite 是 lite-server。所以运行的命令是 npm run lite-server,这将导致节点服务器运行。
Web 开发和部署需要大量重复性任务,因此需要能够自动执行这些任务的工具。
所以这里有一些可以自动化的任务。
CSS 任务:
- 将 Sass 或 Less 编译成 CSS。
- 运行 Autoprefixer 以添加所需的供应商前缀。
- 缩小:在不影响功能的情况下从源代码中删除不必要的字符(空格、换行符、注释)。
- 级联
Javascript任务:
- JSHint:检查 JavaScript 代码是否存在错误和潜在问题(静态代码分析)。
- 级联
- Uglification:缩小+修饰(将局部变量减少为单个字母)。
- 重新检查错误。
建筑项目:
- 可以构建包含所有文件和文件夹所需的项目以及多个依赖项的项目。
- 使用的一些包是 rimraf、copyfiles、usemin、cssmin、htmlmin、uglifyjs。
图像压缩和 BrowserSync:
- 使用 imagemin 压缩图像。
- 使用 onchange, watch 完成更改时自动呈现浏览器。