ng-packagr を使用してライブラリをビルドするときにアセットを含める 質問する

ng-packagr を使用してライブラリをビルドするときにアセットを含める 質問する

ng-packagr を使用して画像や CSS ファイルを Angular ライブラリに組み込むには、どこから始めればよいか、ヒントを教えていただけますか?

ベストアンサー1

これは古いスレッドですが、2020年2月の最新のオプションで更新されています。

ng-packagr ^9.0.1バージョンでは、組み込みの「アセットのコピー」を使用してこれを行うことができます。

{
  "ngPackage": {
    "assets": [
      "CHANGELOG.md",
      "./styles/**/*.theme.scss"
    ],
    "lib": {
      ...
    }
  }
}

https://github.com/ng-packagr/ng-packagr/blob/master/docs/copy-assets.md

これにより、postpackage cpスクリプトを削除することができました。

他の人の利益のために、実際の ng-package.json を追加します。アセット フォルダーとそのすべてのコンテンツをライブラリにコピーし、一緒に公開したいと考えました。

{
  "$schema": "../../node_modules/ng-packagr/ng-package.schema.json",
  "dest": "../../dist/common",
  "assets": [
    "assets"
  ],
  "lib": {
    "entryFile": "src/public-api.ts",
    "umdModuleIds": {
      "common": "common"
    }
  }
}

アセット フォルダはライブラリのルート ディレクトリにあります。これにより、アセット フォルダ全体とその中のコンテンツをコピーしてライブラリに追加し、@include "@node_modules/your-library/assets/styles/main.scss" として使用できます。

おすすめ記事