实例详解带参数的 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 相关文章推荐
IE6 弹出Iframe层中的文本框“经常”无法获得输入焦点
Dec 27 Javascript
jquery 简短右键菜单 多浏览器兼容
Jan 01 Javascript
通过Javascript将数据导出到外部Excel文档的函数代码
Jun 15 Javascript
addEventListener和attachEvent二者绑定的执行函数中的this不相同
Dec 09 Javascript
Android中资源文件(非代码部分)的使用概览
Dec 18 Javascript
jQuery的基本概念与高级编程
May 14 Javascript
简单的jQuery入门指引
Jul 28 Javascript
jQuery Validate插件实现表单强大的验证功能
Dec 18 Javascript
JavaScript实现图片懒加载的方法分析
Jul 05 Javascript
node.js使用redis储存session的方法
Sep 26 Javascript
详解js中的原型,原型对象,原型链
Jul 16 Javascript
Array.filter中如何正确使用Async
Nov 04 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表单请求获得数据求和示例
2014/05/15 PHP
php5.4以下版本json不支持不转义内容中文的解决方法
2015/01/13 PHP
PHP制作用户注册系统
2015/10/23 PHP
PHP中的Trait 特性及作用
2016/04/03 PHP
php基于mcrypt_encrypt和mcrypt_decrypt实现字符串加密解密的方法
2016/07/12 PHP
PHP 进度条函数的简单实例
2017/09/19 PHP
ThinkPHP 在阿里云上的nginx.config配置实例详解
2017/10/11 PHP
JavaScript建立一个语法高亮输入框实现思路
2013/02/26 Javascript
JQuery勾选指定name的复选框集合并显示的方法
2015/05/18 Javascript
Vue2.0 slot分发内容与props验证的方法
2017/12/12 Javascript
vue中关闭eslint的方法分析
2018/08/04 Javascript
Vuejs2 + Webpack框架里,模拟下载的实例讲解
2018/09/05 Javascript
AngularJS上传文件的示例代码
2018/11/10 Javascript
微信小程序搜索功能(附:小程序前端+PHP后端)
2019/02/28 Javascript
nodejs简单抓包工具使用详解
2019/08/23 NodeJs
[14:56]教你分分钟做大人:巫医
2014/10/30 DOTA
[00:48]食人魔魔法师至宝“金鹏之幸”全新模型和自定义特效展示
2019/12/19 DOTA
python分割和拼接字符串
2013/11/01 Python
在Debian下配置Python+Django+Nginx+uWSGI+MySQL的教程
2015/04/25 Python
简单实现python收发邮件功能
2018/01/05 Python
Python为何不能用可变对象作为默认参数的值
2019/07/01 Python
windows、linux下打包Python3程序详细方法
2020/03/17 Python
详解用Pytest+Allure生成漂亮的HTML图形化测试报告
2020/03/31 Python
快速解决Django关闭Debug模式无法加载media图片与static静态文件
2020/04/07 Python
Perricone MD裴礼康美国官网:抗衰老护肤品
2016/09/26 全球购物
体育教育专业毕业生自荐信
2013/11/15 职场文书
给女儿的表扬信
2014/01/18 职场文书
《雨霖铃》教学反思
2014/02/22 职场文书
青年文明号口号
2014/06/17 职场文书
副乡长群众路线教育实践活动个人对照检查材料
2014/09/19 职场文书
行政撤诉申请书
2015/05/18 职场文书
不同意离婚代理词
2015/05/23 职场文书
2015秋季新学期开学寄语
2015/05/28 职场文书
七年级作文之关于奶奶
2019/10/29 职场文书
Python词云的正确实现方法实例
2021/05/08 Python
Win11怎么启动任务管理器?Win11启动任务管理器的几种方法
2021/11/23 数码科技