更多gulp常用插件使用请访问:gulp常用插件汇总


yargs这是一款通过解析参数并生成优雅的用户界面来帮助您构建交互式命令行工具。处理命令行参数的通用解决方案,只要一句代码 var args = require('yargs').argv;就可以让命令行的参数都放在变量args上,可以根据参数判断是测试环境还是正式环境。

更多使用文档请点击访问yargs工具官网

安装

npm install --save yargs

使用

  • 单字符的简单参数,如传入-m=5或-m 5,则可得到args.m = 5
  • 多字符参数(必须使用双连字符),如传入--test=5或--test 5,则可得到args.test = 5。
  • 不带值的参数,如传入--production,则会被认为是布尔类型的参数,可得到args.production = true。

简单的例子:

#!/usr/bin/env node
const argv = require('yargs').argv if (argv.ships > 3 && argv.distance < 53.5) {
console.log('Plunder more riffiwobbles!')
} else {
console.log('Retreat from the xupptumblers!')
}

输出结果:

$ ./plunder.js --ships=4 --distance=22
Plunder more riffiwobbles! $ ./plunder.js --ships 12 --distance 98.7
Retreat from the xupptumblers!

复杂的例子:

#!/usr/bin/env node
require('yargs') // eslint-disable-line
.command('serve [port]', 'start the server', (yargs) => {
yargs
.positional('port', {
describe: 'port to bind on',
default: 5000
})
}, (argv) => {
if (argv.verbose) console.info(`start server on :${argv.port}`)
serve(argv.port)
})
.option('verbose', {
alias: 'v',
type: 'boolean',
description: 'Run with verbose logging'
})
.argv

运行上面的示例 --help 以查看应用程序的帮助。

最新文章

  1. 快速理解-Ajax
  2. wcf 同时支持webhttp 和 引用方式
  3. 奇怪的cab_xxxx_x文件
  4. 最近的学习的linux命令笔记
  5. Python性能测试
  6. CORS跨域资源共享
  7. CSS中新属性calc()
  8. LKD: Chapter 7 Interrupts and Interrupt Handlers
  9. ssh的action校验内容输出
  10. Ffmpeg简介
  11. Spring Security简明实践及相关国际化处理
  12. SSM-SpringMVC-05:SpringMVC视图解析器InternalResourceViewResolver配置
  13. MySQL 分区建索引
  14. PL/SQL简单使用——导入、导出数据表
  15. 移动 web 适配
  16. flask基本介绍及虚拟环境
  17. 一直性hash解决扩容后的hash算法不用变
  18. Python 基础语法+简单地爬取百度贴吧内容
  19. CentOS7.x编译安装nginx,实现HTTP2
  20. UIWebview交互之自己定义传值跳转

热门文章

  1. PHP5.3的VC9、VC6、Thread Safe、Non Thread Safe的区别
  2. pytorch之 bulid_nn_with_2_method
  3. FTP的连接方式(防火墙的配置)
  4. LVM知识梳理
  5. linux下搭建DHCP服务
  6. JVM源码分析之临门一脚的OutOfMemoryError完全解读
  7. vim 快捷键方式
  8. mac item2的快捷键
  9. Emmet:HTML/CSS代码快速编写
  10. c# 匿名方法(函数) 匿名委托 内置泛型委托 lamada