package.json 文件有一个 scripts 字段,可以用于指定脚本命令,供 npm 直接调用。

注:npm run 为每条命令提供了 pre- 和 post- 两个钩子(hook)。以 npm run test 为例,如果我们的 scripts 字段规定了 pretest 和 posttest:

则会先执行 pretest 任务,再执行 test 任务,完成 test 任务后即执行 posttest 任务。
可以简单的将二者理解为:预执行、后执行;

npm run 会创建一个新的 shell,执行指定的命令,并将 node_modules/.bin 加入 PATH 变量。当脚本内容结束,则子 shell 关闭,回到父 shell 中。
1、npm run & npm run-script
这两命令的效果都是一样的,都能执行 package.json 文件 scripts 字段下指定的任务。
npm run 是 npm run-script 的缩写,一般都使用 前者,但是后者可以更好地反应这个命令的本质;
直接运行 npm run 或 npm run-script,不加参数会列出 scripts 属性下所有可运行的命令极其命令内容。
npm run 命令会自动在环境变量 $PATH 添加 node_modules/.bin 目录,所以 scripts 字段里面调用命令时不用加上路径。
所以我们在 package.json 文件内的 scripts 字段内指定任务的时候 一般 无需指定脚本文件的路径,只需要将脚本放到 ./node_module/.bin/ 目录下即可,命令会在 这个目录 下自动寻找对应的脚本文件。而无需使用./node_modules/.bin/jshint**.js。
2、管道式命令
如果希望同时执行多个任务,可以借用 Linux 系统的 管道命令,将两个操作连在一起。
|:连接两个任务
&&:任务内部引用其他任务,子任务 先后 执行 ;亦为标签前面执行成功后,后面的才执行;
&:任务内部引用其他任务,子任务 平行 执行;标签前后的一起执行;
3、常见的命令补充
start 脚本命令
一般用于项目的初始化,是接下来一切工作的依赖起始端

dev 脚本命令
规定开发阶段所要做的处理,比如监视文件变化、实时编译……

server 脚本命令
一般用于启动服务

test 脚本命令
一般用于执行测试:单元测试、*-lint……

prod 脚本命令
一般用于规定进入生产环境时需要做的处理

help 脚本命令
help 脚本命令一般用于展示帮助信息。

docs 脚本命令
docs 脚本命令一般用于生成文档。

package.json文件下的scripts解析总结相关推荐

  1. Vue/React项目的package.json文件scripts命令解析

    Node 开发离不开 npm,而脚本功能是 npm 最强大.最常用的功能之一. 1.什么是 npm 脚本? npm 允许在package.json文件里面,使用scripts字段定义脚本命令. {// ...

  2. 通过weui-1.1.3源码学习前端开发(一)解析package.json文件

    想在微信公众号上开发一个小的应用,找到了weui,顺便看看它的源代码,也算是学习前端开发了. 先看一下weui-1.1.3的源程序目录结构. weui的目录结构 首先看看package.json文件, ...

  3. package.json文件解读

    package.json文件解读 {"name": "vue-04-cli-demo1", // 项目名称 "version": " ...

  4. 模块加载及第三方包:Node.js模块化开发、系统模块、第三方模块、package.json文件、Node.js中模块的加载机制、开发环境与生产环境、cookie与session

    1.Node.js模块化开发 1.1 JavaScript开发弊端 JavaScript 在使用时存在两大问题,文件依赖和命名冲突. 1.2 软件中的模块化开发 一个功能就是一个模块,多个模块可以组成 ...

  5. npm package.json文件解读

    每个Nodejs项目的根目录下面,一般都会有一个package.json文件.该文件可以由npm init生成,定义了项目所需要的各种模块,以及项目的配置信息(比如名称.版本.许可证等元数据). pa ...

  6. 大前端快闪:package.json文件知多少?

    最近在公司某项目参与了一些前端工作,作为后端抠脚大汉,改点前端细节磕磕绊绊,改点大前端.工程化.HTTP交互倒也还能做到柳暗花明. 于是打算用后端程序猿的视角记录一些{大前端}的知识快闪,也算是帮助读 ...

  7. package.json文件详解

    目录 前言 一.package.json 文件作用 二.package.json 文件创建 三.package.json 文件示例 四.package.json 文件配置说明 前言 随着前端由多页面到 ...

  8. npm package.json文件中的依赖关系,devDependencies和peerDependencies之间有什么区别?

    本文翻译自:What's the difference between dependencies, devDependencies and peerDependencies in npm packag ...

  9. node.js 中的package.json文件怎么创建?

    最近在用webstorm和nodejs做一些东西,老是各种混乱,今天上午创建一个新的项目,结果发现,npm init之后,并没有出现package.json,并没有太明确他的功能的小姑娘表示十分的惊慌 ...

最新文章

  1. 性能调优之Java系统级性能监控及优化
  2. Cisco ××× 完全配置指南-连载-PIX和ASA连接的故障诊断与排除
  3. 计算机应用工作技能与经验,关于计算机应用技能人才培养模式的思考
  4. win命令安装 安装cmake_win10下VSCode+CMake+Clang+GCC环境搭建教程图解
  5. 感知器的c++实现_使用FastAI和PyTorch的多层感知器
  6. PHPCMS V9.3.2用户注册模板中的一个低级Bug
  7. UVA 10604 Chemical Reaction
  8. [Luogu] P1939 【模板】矩阵加速(数列)
  9. 无状态shiro认证组件(禁用默认session)
  10. XML和JSON的使用总结
  11. java实现文件移动_java实现文件的复制,移动
  12. android 属性动画源码分析
  13. 本文介绍在Wireshark网络协议分析仪中如果解密SSL和TLS流量
  14. mac移动硬盘未装载解决方案
  15. 一定要看:如何成为一名全栈工程师?
  16. ModelCoder模块系列:PID模块介绍
  17. 为梦想学习,是最酷的事
  18. 小米路由器R4AC 小米路由器4A百兆版 原厂BootLoader和eeprom
  19. 终于有人把标签设计讲明白了
  20. 魔兽世界怀旧服务器最新,魔兽世界怀旧服9月13日免费转服-11个转服新服务器一览...

热门文章

  1. 2020年总结!翻过这座山,他们就会听到你的故事!
  2. Delphi下实现全屏快速找图找色
  3. 利用列表实现石头剪刀布游戏
  4. 自动化测试介绍和分类,看这一篇就够了
  5. php验证身份证是否正确
  6. 基于dragonboard410c DHT11模块的驱动移植
  7. 复旦-华盛顿大学EMBA二十年20人丨孙珏坚持与成长,女性领导力绽放内生光芒
  8. 计算机网络多元化媒体传达,多媒体技术在视觉传达设计的应用
  9. mysql explain rows理解
  10. 有符号右移,无符号右移