实例详解带参数的 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 相关文章推荐
推荐17个优美新鲜的jQuery的工具提示插件
Sep 14 Javascript
JS实现在页面随时自定义背景颜色的方法
Feb 27 Javascript
JS实现超简单的仿QQ折叠菜单效果
Sep 21 Javascript
JS非Alert实现网页右下角“未读信息”效果弹窗
Sep 26 Javascript
详解webpack + vue + node 打造单页面(入门篇)
Sep 23 Javascript
ajax与jsonp的区别及用法
Oct 16 Javascript
详解React 服务端渲染方案完美的解决方案
Dec 14 Javascript
微信小程序实现手势滑动卡片效果
Aug 26 Javascript
JavaScript实现图片上传并预览并提交ajax
Sep 30 Javascript
微信小程序本地存储实现每日签到、连续签到功能
Oct 09 Javascript
JS跨浏览器解析XML应用过程详解
Oct 16 Javascript
react使用antd表单赋值,用于修改弹框的操作
Oct 29 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
PHP语法小结之基础和变量
2015/11/22 PHP
php实现微信企业号支付个人的方法详解
2017/07/26 PHP
JQuery 图片延迟加载并等比缩放插件
2009/11/09 Javascript
js计算字符串长度包含的中文是utf8格式
2013/10/15 Javascript
jquery 取子节点及当前节点属性值的方法
2014/08/24 Javascript
jQuery中DOM树操作之复制元素的方法
2015/01/23 Javascript
举例讲解JavaScript中将数组元素转换为字符串的方法
2015/10/25 Javascript
javascript点击按钮实现隐藏显示切换效果
2016/02/03 Javascript
原生JS实现首页进度加载动画
2016/09/14 Javascript
NodeJS处理Express中异步错误
2017/03/26 NodeJs
老生常谈js-react组件生命周期
2017/05/02 Javascript
基于jQuery实现手风琴菜单、层级菜单、置顶菜单、无缝滚动效果
2017/07/20 jQuery
react-navigation 如何判断用户是否登录跳转到登录页的方法
2017/12/01 Javascript
Vue props用法详解(小结)
2018/07/03 Javascript
微信小程序实现带缩略图轮播效果
2018/11/04 Javascript
Vue根据条件添加click事件的方式
2019/11/09 Javascript
JavaScript使用canvas绘制随机验证码
2020/02/17 Javascript
[35:29]Secret vs VG 2018国际邀请赛淘汰赛BO3 第三场 8.23
2018/08/24 DOTA
python连接oracle数据库实例
2014/10/17 Python
解决python文件字符串转列表时遇到空行的问题
2017/07/09 Python
Python 删除整个文本中的空格,并实现按行显示
2018/07/24 Python
tensorflow之tf.record实现存浮点数数组
2020/02/17 Python
python爬虫看看虎牙女主播中谁最“顶”步骤详解
2020/12/01 Python
二年级体育教学反思
2014/01/15 职场文书
《明天,我们毕业》教学反思
2014/04/24 职场文书
酒店总经理岗位职责范本
2014/08/08 职场文书
2014年学习厉行节约反对浪费思想汇报
2014/09/10 职场文书
法律专业大学生职业生涯规划书:向目标一步步迈进
2014/09/22 职场文书
化工见习报告范文
2014/10/31 职场文书
文明倡议书
2015/01/19 职场文书
年度考核表个人总结
2015/03/06 职场文书
公司搬迁通知
2015/04/20 职场文书
2015年驾驶员工作总结
2015/04/29 职场文书
Python入门之基础语法详解
2021/05/11 Python
Redis分布式锁Redlock的实现
2021/08/07 Redis
MySQL数据库如何查看表占用空间大小
2022/06/10 MySQL