美文网首页
【npm】scripts 使用

【npm】scripts 使用

作者: 小棨 | 来源:发表于2019-06-26 17:43 被阅读0次

针对项目使用的npm,做一个简单的原理和使用笔记。
npm 允许在package.json文件里面,使用scripts字段定义脚本命令。scripts是一个对象,每个属性,对应执行脚本命令。
参考文章:引路文章之npm scripts 使用指南

#原理

每当执行npm run,就会自动新建一个 Shell,在这个 Shell 里面执行指定的脚本命令。注意:当前目录的node_modules/.bin子目录里面的所有脚本,都可以直接用脚本名调用,而不必加上路径。比如,当前项目的依赖里面有 Mocha,只要直接写mocha test。

执行顺序
  • 并行执行(即同时的平行执行),可使用&符号。
npm run script1.js & npm run script2.js
  • 继发执行(即只有前一个任务成功,才执行下一个任务),可使用&&符号。
 npm run script1.js && npm run script2.js
钩子

npm 脚本有pre和post两个钩子。eg:build脚本命令的钩子就是prebuild和postbuild。

npm 初始化

执行命令npm init填写对应信息进行构建

npm init 执行.png
  • name 项目名称
  • version 项目的版本号
  • description 项目的描述信息
  • entry point 项目的入口文件
  • test command 项目启动时脚本命令
  • git repository 如果你有 Git 地址,可以将这个项目放到你的 Git 仓库里
  • keywords 关键词
  • author 作者
  • license 开源协议
#变量
  • npm_lifecycle_event,该变量返回当前正在运行的脚本名称,可以利用这个变量,在同一个脚本文件里面,为不同的npm scripts命令编写代码。
const TARGET = process.env.npm_lifecycle_event;
  • 通过npm_package_前缀,npm 脚本可以拿到package.json里面的字段。
{
  "name": "demo", 
  "version": "1.0.0",
  "scripts": {
    "build": "node build.js"
  }
}
console.log(process.env.npm_package_name); // demo
console.log(process.env.npm_package_scripts_build); // 可获取嵌套信息
常用脚本
// 删除目录
"clean": "rimraf dist/*",

// 本地搭建一个 HTTP 服务
"serve": "http-server -p 9090 dist/",

// 打开浏览器
"open:dev": "opener http://localhost:9090",

// 实时刷新
 "livereload": "live-reload --port 9091 dist/",

// 构建 HTML 文件
"build:html": "jade index.jade > dist/index.html",

// 只要 CSS 文件有变动,就重新执行构建
"watch:css": "watch 'npm run build:css' assets/styles/",

// 只要 HTML 文件有变动,就重新执行构建
"watch:html": "watch 'npm run build:html' assets/html",

// 部署到 Amazon S3
"deploy:prod": "s3-cli sync ./dist/ s3://example-com/prod-site/",

// 构建 favicon
"build:favicon": "node scripts/favicon.js",

小棨留言:文章描述或者语法理解不到位的地方,请大家多多指教!

相关文章

  • 【npm】scripts 使用

    针对项目使用的npm,做一个简单的原理和使用笔记。npm 允许在package.json文件里面,使用script...

  • npm scripts 使用

    背景: 项目安装了 browserify --save-dev, 如何在命令行中使用这个命令 这个命令的位置在 n...

  • npm package.json 属性详解

    npm 允许在package.json文件里面,使用scripts字段定义脚本命令。 { "scripts":{"...

  • npm、npm scripts

    1、 如何全局安装一个 node 应用? 上述命令执行之后将会在当前的目录下创建一个 node_modules 的...

  • 05-使用 npm scripts 运行webpack

    使用以下命令运行本地webpack不是特别方便, 可以设置使用快捷方式:npm scripts 一、 添加 npm...

  • npm-npmscript-gulp-webpack

    - npm的使用- 开发node应用- gulp介绍及实践- npm scripts打造前端工作流- webpac...

  • npm scripts

    在一定程度是,你无论如何都要使用npm,而同时npm提供了脚本功能,所以你在命令行中使用的命令都可以在 npm S...

  • npm scripts

    待续

  • npm scripts

    就是执行shell命令,有些场景可以适合用这个辅助功能 1、项目的相关脚本,可以集中在一个地方。2、不同项目的脚本...

  • npm scripts 使用指南

    阮一峰老师文章

网友评论

      本文标题:【npm】scripts 使用

      本文链接:https://www.haomeiwen.com/subject/kcthcctx.html