首页 > 解决方案 > 如何在使用 Angular CLI 创建的库项目中包含资产?

问题描述

我正在使用 Angular CLI 开发一个库。在一个普通的项目中,您有一个assets目录,其中包含图像svg和其他文件,这些文件将在dist文件夹中分发用于生产。如何在使用 CLI 创建的库项目中包含要分发的资产文件?谢谢。

标签: angularangular-cli

解决方案


我使用 npm install 生命周期钩子。创建了一个postinstall.js包含复制命令的目录,用于在有人安装我的库时将这些资产放置在 Angular 应用程序中的目录中。

您还需要修改 np-packgr 配置 "keepLifecycleScripts": true

"scripts": {
        "postinstall": "node post-install.js"
    },
    "peerDependencies": {},
    "ngPackage": {
        "$schema": "../node_modules/ng-packagr/ng-package.schema.json",
        "dest": "../../../../dist",
        "workingDirectory": ".ng_build",
        "lib": {
            "entryFile": "./index.ts",
            "externals": {}
        },
        "keepLifecycleScripts": true
    }

推荐阅读