ホームページ >ウェブフロントエンド >jsチュートリアル >Execa と child_process を使用して CLI コマンドをプログラムで実行する場合の比較。
この記事では、Shadcn/ui と CodeMirror にある CLI コマンドをプログラムで実行する 2 つの方法を分析します。
CLI コマンドをプログラムで実行できるかどうか考えたことはありますか? Shadcn/ui が execa を使用する方法と、CodeMirror が child_process を使用して CLI をプログラムで実行する方法を見ていきます。
CodeMirror は、child_process.execFileSync と呼ばれる Node.js API を使用していることが判明しました。続きを読む
function run(cmd, args, wd = root, { shell = false } = {}) { return child.execFileSync(cmd, args, {shell, cwd: wd, encoding: "utf8", stdio: ["ignore", "pipe", process.stderr]}) }
もう少しコンテキストを提供するために、この実行は CodeMirror ソース コードの install という関数内で呼び出されます。
このインストールの目的については、CodeMirror v6 Readme を確認してください。
CodeMirror の開発環境をセットアップする最初の手順の 1 つは、以下のコマンドを実行することです。これについては CodeMirror の Readme.md に記載されています。
node bin/cm.js install
インストールは process.argv
を使用して解析されますExeca は、スクリプト、アプリケーション、またはライブラリ内のコマンドを実行します。シェルとは異なり、プログラムによる使用に最適化されています。 child_process コア モジュールの上に構築されます。
Shadcn/ui の add コマンドは、パッケージをインストールするための execa であることがわかります
Shadcn/ui リポジトリでの Execa の使用状況に関する検索結果を確認してください
Thinkthroo では、大規模なオープンソース プロジェクトを研究し、アーキテクチャ ガイドを提供しています。私たちは、tailwind で構築された、プロジェクトで使用できる再利用可能なコンポーネントを開発しました。 Next.js、React、Node 開発サービスを提供します。
プロジェクトについて話し合うためのミーティングを予約してください。
https://www.npmjs.com/package/execa
https://nodejs.org/api/child_process.html#child_processexecfilesyncfile-args-options
https://nodejs.org/api/child_process.html#child_processexecfilefile-args-options-callback
https://github.com/codemirror/dev/blob/main/bin/cm.js#L14
https://github.com/codemirror/dev?tab=readme-ov-file#codemirror
https://github.com/search?q=repo:shadcn-ui/ui execa&type=code
以上がExeca と child_process を使用して CLI コマンドをプログラムで実行する場合の比較。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。