ホームページ >ウェブフロントエンド >jsチュートリアル >Caporal.jsを使用して、独自のヨーマンスタイルの足場ツールを作成します
このチュートリアルは、caporal.jsを使用してnode.jsコマンドラインインターフェイス(CLI)ツールを作成して、新しいJavaScriptプロジェクトの作成を自動化する方法を示しています。 繰り返しプロジェクトのセットアップにうんざりしていませんか?このソリューションでは、ワークフローを合理化するカスタマイズ可能な足場ツールを構築できます。
プロセスは、JavaScriptと容易に利用可能なライブラリを活用し、特殊なツールまたは複雑な言語の必要性を排除します。 このアプローチには、いくつかの利点があります:
prompt
shelljs
Caporal.js
プロジェクトディレクトリを作成し、次の依存関係を持つファイルを初期化します。
package.json
<code class="language-json">{ "name": "scaffold", "version": "1.0.0", "main": "index.js", "bin": { "scaffold": "index.js" }, "dependencies": { "caporal": "^0.3.0", "colors": "^1.1.2", "prompt": "^1.0.0", "shelljs": "^0.7.7" } }</code>を使用して依存関係をインストールします
npm install
bin
package.json
scaffold
エントリポイントを構築しますindex.js
コマンドがあります。
index.js
プロジェクトテンプレートの作成
index.js
テンプレートは、プロジェクトの構造とファイルを定義します。各テンプレートタイプ(例えば、create
、
<code class="language-javascript">#!/usr/bin/env node const prog = require('caporal'); const createCmd = require('./lib/create'); prog .version('1.0.0') .command('create', 'Create a new application') .argument('<template>', 'Template to use') .option('--variant <variant>', 'Which variant of the template to create') .action(createCmd); prog.parse(process.argv);</variant></template></code>を含める必要があります(例:
、)。 a ファイルは、ユーザー入力のこれらの変数をリストします。
templates
コマンドtemplates/node/default
templates/node/mvc
を実装します
package.json
[NAME]
ファイルには、[VERSION]
コマンドのロジックが含まれています:_variables.js
<code class="language-json">{ "name": "scaffold", "version": "1.0.0", "main": "index.js", "bin": { "scaffold": "index.js" }, "dependencies": { "caporal": "^0.3.0", "colors": "^1.1.2", "prompt": "^1.0.0", "shelljs": "^0.7.7" } }</code>この関数は、テンプレートファイルのコピーを処理し、ユーザーに変動値を求め、ファイル内のプレースホルダーを置き換えます。 この動的な置換には
コマンドが重要です。shelljs.sed
CLIをグローバルに利用できるようにする プロジェクトディレクトリで
実行して、CLIをグローバルにアクセスできるようにします。 その後、任意のディレクトリからのようなコマンドを実行できます。
npm link
scaffold create node --variant mvc
cli
を拡張します このアプローチの柔軟性により、大幅な拡張が可能になります:
コマンドを追加します。より複雑な変数の交換を処理します。
以上がCaporal.jsを使用して、独自のヨーマンスタイルの足場ツールを作成しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。