このドキュメントはAIによって翻訳されました。不正確な情報については、英語版をご参照ください
NocoBase のプラグイン開発では、依存関係はプラグイン固有の依存関係とグローバルな依存関係の2種類に分けられます。
@nocobase/server と @nocobase/client によって提供されるため、プラグインで個別にバンドルする必要はありません。プラグイン固有の依存関係はプラグインの成果物(サーバーの依存関係は dist/node_modules)にバンドルされるため、プラグイン開発時には、すべての依存関係を dependencies ではなく devDependencies に宣言することをおすすめします。これにより、開発環境と本番環境での差異を防ぐことができます。
プラグインが以下の依存関係をインストールする必要がある場合は、バージョン番号がグローバルな依存関係の @nocobase/server および @nocobase/client と一致していることを確認してください。一致しない場合、ランタイムで競合が発生する可能性があります。
以下の依存関係はNocoBaseによって提供されるため、プラグインでバンドルする必要はありません。もし必要であれば、フレームワークのバージョンと一致させる必要があります。
依存関係の一貫性を保つ
グローバルな依存関係に既に存在するパッケージを使用する必要がある場合は、異なるバージョンをインストールせず、グローバルな依存関係を直接使用してください。
バンドルサイズを最小限に抑える
一般的なUIライブラリ(antdなど)、ユーティリティライブラリ(lodashなど)、データベースドライバー(pg、mysql2など)については、グローバルに提供されているバージョンに依存し、重複したバンドルを避けるべきです。
デバッグ環境と本番環境の一貫性
devDependencies を使用することで、開発環境と最終的な成果物の一貫性を保ち、dependencies や peerDependencies の不適切な設定による環境の差異を防ぐことができます。