摘要:酷庫,每天兩分鐘,了解一個(gè)流行庫。昨天,我們學(xué)習(xí)的庫,用于解析命令行參數(shù),能將參數(shù)數(shù)組轉(zhuǎn)換為一個(gè)更易于訪問的對象。今天,我們繼續(xù)學(xué)習(xí)一個(gè)更加強(qiáng)大的命令行參數(shù)處理庫。
NPM酷庫,每天兩分鐘,了解一個(gè)流行NPM庫。
昨天,我們學(xué)習(xí)的minimist庫,用于解析Node.js命令行參數(shù),能將參數(shù)數(shù)組process.env.argv 轉(zhuǎn)換為一個(gè)更易于訪問的對象。
今天,我們繼續(xù)學(xué)習(xí)一個(gè)更加強(qiáng)大的命令行參數(shù)處理庫commander。
commandercommander 是一個(gè)命令行參數(shù)處理的完整的解決方案,不僅僅包含參數(shù)數(shù)組的解析轉(zhuǎn)換,更支持如下特性:
參數(shù)格式正則匹配
可變數(shù)量參數(shù)列表
參數(shù)默認(rèn)值
參數(shù)別名支持
可定義參數(shù)語法
子命令支持
自定義幫助信息輸出
應(yīng)用實(shí)例:
const program = require("commander"); program .version("0.1.0") .option("-C, --chdir參考資料", "change the working directory") .option("-c, --config ", "set config path. defaults to ./deploy.conf") .option("-T, --no-tests", "ignore test hook"); program .command("setup [env]") .description("run setup commands for all envs") .option("-s, --setup_mode [mode]", "Which setup mode to use") .action(function(env, options){ let mode = options.setup_mode || "normal"; env = env || "all"; console.log("setup for %s env(s) with %s mode", env, mode); });
https://github.com/tj/command...
http://tj.github.io/commander...
歡迎關(guān)注公眾號:梁興臣每天了解一個(gè)NPM庫,一年后成為Node.js高手
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/92496.html
摘要:酷庫,每天兩分鐘,了解一個(gè)流行庫。昨天我們了解的庫用于從文件中加載環(huán)境變量。雖然從中可以得到啟動參數(shù)列表,但是我們?nèi)孕枰獙?shù)進(jìn)行進(jìn)一步解析處理才行。 NPM酷庫,每天兩分鐘,了解一個(gè)流行NPM庫。 昨天我們了解的dotenv庫用于從文件中加載環(huán)境變量。環(huán)境變量用于程序運(yùn)行時(shí)動態(tài)加載參數(shù),除了環(huán)境變量,我們還可以在啟動Node.js 程序時(shí)直接指定命令行參數(shù): node index.j...
摘要:酷庫,每天兩分鐘,了解一個(gè)流行庫。昨天,我們了解的中數(shù)據(jù)流的處理,并使用快速創(chuàng)建雙向流,今天,我們繼續(xù)討論數(shù)據(jù)流。我們昨天說到,使用數(shù)據(jù)流,可以分批讀取數(shù)據(jù)到內(nèi)存,而不用將文件一次性讀取到內(nèi)存。 NPM酷庫,每天兩分鐘,了解一個(gè)流行NPM庫。 昨天,我們了解的Node.js中數(shù)據(jù)流的處理,并使用through快速創(chuàng)建雙向流,今天,我們繼續(xù)討論數(shù)據(jù)流。 我們昨天說到,使用數(shù)據(jù)流,可以分批...
摘要:酷庫,每天兩分鐘,了解一個(gè)流行庫。今天,我們繼續(xù)認(rèn)識另一個(gè)日志框架,這個(gè)框架和有些類似,也提供了多路日志輸出的功能。中稱之為,而中稱之為輸出源。日志分類,可以用來標(biāo)志不同的程序模塊,類似庫中的效果,默認(rèn)分類為。 NPM酷庫,每天兩分鐘,了解一個(gè)流行NPM庫。 前兩天,我們認(rèn)識了 debug 庫 和 winston 庫,兩款管理程序日志的庫,其中debug偏向于適合開發(fā)調(diào)試,winsto...
摘要:前言這是一篇關(guān)于如何使用構(gòu)建高性能高可讀性的現(xiàn)代化命令行工具的博客。對于命令行工具來說,運(yùn)行時(shí)的權(quán)限是巨大的,但不要因此弄臟用戶的系統(tǒng)。 前言 這是一篇關(guān)于如何使用 NodeJS 構(gòu)建高性能、高可讀性的現(xiàn)代化命令行工具的博客。 每當(dāng)我們想要創(chuàng)建一個(gè)基于 NodeJS 的命令行工具時(shí),就會衍生出一堆問題需要解決,比如如何準(zhǔn)備開發(fā)環(huán)境,如何打包轉(zhuǎn)譯代碼,如何使代碼在轉(zhuǎn)譯后保持可調(diào)用的狀態(tài)同...
摘要:前言作為官方的腳手架是相當(dāng)好用的。注意就是腳手架的核心配置代碼。另一個(gè)是使用,用戶通過增加修改配置。所以才有了今天的主題基于的腳手架,確切說應(yīng)該是基于的腳手架。其中一定要填寫。前言 create-react-app作為facebook官方的react腳手架是相當(dāng)好用的。主要設(shè)計(jì)原理是將配置好的如Webpack,Babel,ESLint,合并到react-scripts這npm包中,用戶就可以...
閱讀 2192·2021-11-11 16:55
閱讀 1715·2019-08-30 15:54
閱讀 2846·2019-08-30 15:53
閱讀 2247·2019-08-30 15:44
閱讀 1181·2019-08-30 15:43
閱讀 988·2019-08-30 11:22
閱讀 1980·2019-08-29 17:20
閱讀 1590·2019-08-29 16:56