实例详解带参数的 npm script

 更新时间:2019年05月28日 11:22:58   作者:前端也疯狂  
本文通过实例代码给大家介绍了带参数的 npm script,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下

添加参数可以减少重复的 npm script。拿 eslint 来说,传入 --fix 参数,就开启内置的代码风格自动修复模式,好智能听起来。

"scripts": {
  ...,
  "lint:js": "eslint ./src/**/*.js",
  "lint:js:fix": "eslint ./src/**/*.js --fix"
}

本着不 DRY 的原则,而且还会遇上复制粘贴带来的风险,可以这么巧妙的配置:

"scripts": {
  ...,
  "lint:js": "eslint ./src/**/*.js",
  "lint:js:fix": "npm run lint:js -- --fix"
}

对面个上面命令配置, --fix 前面添加了 -- , -- 是分隔符,意思就是给 npm run lint:js 添加额外的参数。

这个时候看看你的代码,你会发现一些代码风格就自动修复了。

添加注释

随着命令配置越来越多,添加注释势在必行,以保障代码的可读性和维护性。

在 package.json 中添加 // 为键的值

"scripts": {
  ...,
  "//": "并行检查所有代码编程风格",
  "lint:bx-all": "npm-run-all --parallel lint:*"
}

添加 // 的方式明显有不足,npm run 不能将注释和命令对应上,且只会列出最后那个。

直接在脚本命令中编辑加注释

"scripts": {
  ...,
  "lint-bx-all": "# 并行检查所有代码编程风格 \n npm-run-all --parallel lint:*"
}

注意 \n 后面有空格,主要是为了排版(换行或缩进)美观,当然了也可以用 \t 。

运行时日志

默认日志

不添加任何参数控制日志输出,也是最常用的,可以看到执行命令和执行命令的结果。

更简洁的日志 -s

搭配 --loglevel silent 或 --silent 或 -s 参数来控制日志输出,

不简洁的日志 -d

使用场景多在排查脚本问题的时候可用,搭配 --loglevel verbose 或 --verbose 或 -d (本来以为是 -v ,估计是 -v 是 version)

总结

以上所述是小编给大家介绍的带参数的 npm script,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

  • 人人网javascript面试题 可以提前实现下

    人人网javascript面试题 可以提前实现下

    JavaScript面试题要求:以下题目必须从一至四题中,选出三道题,使用原生代码实现,不可使用任何框架,第五题为选作题
    2012-01-01
  • 微信小程序如何获知用户运行小程序的场景教程

    微信小程序如何获知用户运行小程序的场景教程

    这篇文章主要给大家介绍了在微信小程序中如何获知用户运行小程序场景的相关资料,文中介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来跟着小编一起来看看吧。
    2017-05-05
  • javascript htmlencode函数(ff兼容版) 主要是编辑器中反转html代码

    javascript htmlencode函数(ff兼容版) 主要是编辑器中反转html代码

    非常不错的htmlencode 方法,比用正则实现的更好,而且效率高,推荐使用第一种方法。
    2009-06-06
  • JS判断鼠标从什么方向进入一个容器实例说明

    JS判断鼠标从什么方向进入一个容器实例说明

    偶然将想到的一个如何判断鼠标从哪个方向进入一个容器的问题,并且做了一系列的设想,代码部分不是很多,我直接写了个示例, 感兴趣的朋友可以了解下,或许本文对你有所帮助
    2013-02-02
  • JavaScript常规加密技术实现方式详解

    JavaScript常规加密技术实现方式详解

    这篇文章主要为大家介绍了JavaScript常规加密技术实现方式详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-04-04
  • js如何根据class获取元素并且点击元素详解

    js如何根据class获取元素并且点击元素详解

    这篇文章主要给大家介绍了关于js如何根据class获取元素并且点击元素的相关资料,获取元素集合的方法有很多,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-04-04
  • Bootstrap实现带暂停功能的轮播组件(推荐)

    Bootstrap实现带暂停功能的轮播组件(推荐)

    最近小编在项目中用到了一款带轮播组件,功能非常齐全,可以设置各种标题样式、动画效果、轮播时间、开始暂停等功能,下面小编通过本文给大家详细介绍下实现过程,需要的朋友参考下吧
    2016-11-11
  • 原生JavaScript中直接触发事件的方式小结

    原生JavaScript中直接触发事件的方式小结

    JavaScript提供了多种方式来直接触发事件,无论是在用户交互、程序逻辑处理或是数据更新时,本文将全面探讨原生JavaScript中各种事件触发方式,并通过深入的技术案例分析,需要的朋友可以参考下
    2025-01-01
  • JS异步堆栈追踪之为什么await胜过Promise

    JS异步堆栈追踪之为什么await胜过Promise

    与直接使用Promise相比,使用async/await不仅可以使代码更具可读性,而且还可以在JavaScript引擎中实现一些有趣的优化。这篇文章是关于一个这样的优化,涉及异步代码的堆栈追踪。
    2021-04-04
  • BootStrap中<li role=

    BootStrap中<li role=

    最近在学习bootstrap3.3.5,遇到一个问题搞不清楚<li role="presentation">到底什么含义?今天小编通过本文给大家详细介绍下,一起看看吧
    2016-12-12

最新评论