特定のフォルダをパッケージルートとしてnpmで公開する方法 質問する

特定のフォルダをパッケージルートとしてnpmで公開する方法 質問する

私は、ソースをビルドしてパッケージ化し、というディレクトリにリリースするためのgulpタスクを含むプロジェクトを持っていますdist。私の目標は、それをnpmパッケージとして公開することですが、distフォルダのみです。npm ドキュメントタグを使用してfilesエクスポートするファイルを指定できると書かれています。これは機能します。しかし、ドキュメントには次のようにも書かれています:

配列内のフォルダに名前を付けると、そのフォルダ内のファイルも含まれるようになります。

結果は npm パッケージで、node_modules は次のようになります。

生成されたnpmパッケージ

distしかし、すべてのファイルをパッケージのルート (そのフォルダーなし) に表示したいです。ファイルはフォルダーindex.js内にありますが、ルートにある必要があります。タグを設定しようとdistしましたが、うまくいきませんでした。files/dist/**/*

どうすればそれを達成できるでしょうか?

ベストアンサー1

私も同じ願望を持っていますがnpmツールのみを使用してこれを実現する方法はありません別のスクリプト/ツールを使用してパッケージを整理することもできます。

代替ソリューション

現在、私は をフォルダーpackage.jsonにコピーしdist、フォルダーnpm pack内で実行していますdist。これは基本的に、パッケージの望ましい配置を提供すると思います。

この npm 設計に関する関連資料を以下に示します。NodeにDirectories.libがないのはなぜか

directories.libまた、jspm はオプションを尊重し、npm パッケージを解決するときにファイルを再配置する点も興味深い点ですpackage.json。これはすべて、jspm または npm/webpack で使用できる共通ライブラリを構築したいと思ったために実現しました。

おすすめ記事