首頁  >  文章  >  web前端  >  使用nodejs開發cli專案實例_node.js

使用nodejs開發cli專案實例_node.js

WBOY
WBOY原創
2016-05-16 15:56:581162瀏覽

1.分鐘使用預設選項安裝完nodejs
2.分鐘使用sudo npm install -g yo安裝完yeoman
3.透過sudo npm install -g generator-cli-starter安裝cli開發腳手架

OK, 現在我們可以用yo cli-starter指令開始我們cli開發之旅了

建立cli專案

複製程式碼 程式碼如下:

yo cli-starter

依照提示輸入項目名稱、指令名稱,完成cli項目建立。後續的教學中我們將使用hi作為你的指令名稱,如果你使用了其他指令名稱,請注意替換

Let's try first

現在命令列中輸入以下命令(如果你用的不是hi,注意替換)

複製程式碼 程式碼如下:

hi

效果如下:

試試常見指令?

我們接下來就開發一個類似ls, ls -all的指令,這裡面需要用到一個node模組commander,先來安裝一下:

進入該專案根目錄執行npm install --save commander,

然後用你喜歡的editor開啟bin/hi.js,並用以下內容取代原先的程式碼:

複製程式碼 程式碼如下:

#!/usr/bin/env node

'use strict';

var program = require('commander');

program
    .version('0.0.1');//聲明hi的版本號碼

program
    .command('list')//聲明hi下有一個指令叫list
    .description('list files in current working directory')//給予list這個指令的描述
    .option('-a, --all', 'Whether to display hidden files')//設定list這個指令的參數
    .action(function(options) {//list指令的實作體
        var fs = require('fs');
        //取得目前運作目錄下的檔案資訊
        fs.readdir(process.cwd(), function(err, files) {
            var list = files;
            if (!options.all) {//檢查使用者是否給了--all或-a的參數,如果沒有,則過濾掉那些以.開頭的檔案
                list = files.filter(function(file) {
                    return file.indexOf('.') !== 0;
                });
            }
            console.log(list.join(' '));//控制台將所有檔案名稱列印出來
        });
    });

program.parse(process.argv);//開始解析使用者輸入的指令

OK,現在來試試我們剛剛寫好的指令吧,

複製程式碼 程式碼如下:

hi -V

hi list

複製程式碼 程式碼如下:

hi list -a

如何發布

首先需要在Github上建立一個項目,並且把我們剛才寫的程式碼同步上去。

然後透過npm publish指令將你的cli發佈到npm。

然後其他使用者就可以透過npm install -g [專案名稱]將你的指令安裝到本地使用了

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn