实例详解带参数的 npm script


Posted in Javascript onMay 28, 2019

添加参数可以减少重复的 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 相关文章推荐
图片连续滚动代码[兼容IE/firefox]
Jun 11 Javascript
对采用动态原型方式无法展示继承机制得思考
Dec 04 Javascript
js面向对象 多种创建对象方法小结
May 21 Javascript
jquery对ajax的支持介绍
Dec 10 Javascript
javascript在子页面中函数无法调试问题解决方法
Jan 17 Javascript
javascript实现数字+字母验证码的简单实例
Feb 10 Javascript
js通过更改按钮的显示样式实现按钮的滑动效果
Apr 23 Javascript
javacript使用break内层跳出外层循环分析
Jan 12 Javascript
微信小程序使用video组件播放视频功能示例【附源码下载】
Dec 08 Javascript
Node4-5静态资源服务器实战以及优化压缩文件实例内容
Aug 29 Javascript
koa-passport实现本地验证的方法示例
Feb 20 Javascript
node使用async_hooks模块进行请求追踪
Jan 28 Javascript
jquery实现Ajax请求的几种常见方式总结
May 28 #jQuery
Vue2.x通用条件搜索组件的封装及应用详解
May 28 #Javascript
jquery操作select常见方法大全【7种情况】
May 28 #jQuery
vue实现条件叠加搜索的解决方法
May 28 #Javascript
webpack4 从零学习常用配置(小结)
May 28 #Javascript
详解ES6 export default 和 import语句中的解构赋值
May 28 #Javascript
jQuery实现高级检索功能
May 28 #jQuery
You might like
paypal即时到账php实现代码
2010/11/28 PHP
thinkphp数据查询和遍历数组实例
2014/11/28 PHP
php数组键名技巧小结
2015/02/17 PHP
Android App中DrawerLayout抽屉效果的菜单编写实例
2016/03/21 PHP
CakePHP框架Model函数定义方法示例
2017/08/04 PHP
laravel-admin 实现在指定的相册下添加照片
2019/10/21 PHP
JavaScript中的Screen屏幕对象
2008/01/16 Javascript
javascript正则表达式中参数g(全局)的作用
2010/11/11 Javascript
JS/jQuery实现默认显示部分文字点击按钮显示全部内容
2013/05/13 Javascript
Jquery Uploadify多文件上传带进度条且传递自己的参数
2013/08/28 Javascript
javascript相关事件的几个概念
2015/05/21 Javascript
JavaScript中将数组进行合并的基本方法讲解
2016/03/07 Javascript
使用jQuery加载html页面到指定的div实现方法
2016/07/13 Javascript
AngularJS解决ng界面长表达式(ui-set)的方法分析
2016/11/07 Javascript
JS实现简单抖动效果
2017/06/01 Javascript
template.js前端模板引擎使用详解
2017/10/10 Javascript
在 Angular-cli 中使用 simple-mock 实现前端开发 API Mock 接口数据模拟功能的方法
2018/11/28 Javascript
vue单文件组件lint error自动fix与styleLint报错自动fix详解
2019/01/08 Javascript
vue监听用户输入和点击功能
2019/09/27 Javascript
webpack4 配置 ssr 环境遇到“document is not defined”
2019/10/24 Javascript
优化Vue中date format的性能详解
2020/01/13 Javascript
Python中文件操作简明介绍
2015/04/13 Python
Python isinstance函数介绍
2015/04/14 Python
Python用imghdr模块识别图片格式实例解析
2018/01/11 Python
Python使用folium excel绘制point
2019/01/03 Python
python读取并写入mat文件的方法
2019/07/12 Python
.dcm格式文件软件读取及python处理详解
2020/01/16 Python
使用TFRecord存取多个数据案例
2020/02/17 Python
html5如何在Canvas中实现自定义路径动画示例
2017/09/18 HTML / CSS
美国老牌主机服务商:iPage
2016/07/22 全球购物
世界著名的顶级牛排:Omaha Steak(奥马哈牛排)
2016/09/20 全球购物
教师自我剖析材料(群众路线)
2014/09/29 职场文书
大学生年度个人总结
2015/02/15 职场文书
幼儿园开学报名通知
2015/07/16 职场文书
MATLAB 全景图切割及盒图显示的实现步骤
2021/05/14 Python
Win11 KB5015814遇安装失败 影响开始菜单性能解决方法
2022/07/15 数码科技