首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用ng-packagr构建库时包括资产

使用ng-packagr构建库时包括资产
EN

Stack Overflow用户
提问于 2017-09-27 08:27:21
回答 5查看 22.9K关注 0票数 26

有人能给出一个提示,从哪里开始使用ng-packagr将图像和css文件包含到角库中?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2017-10-27 19:58:08

关于这个问题,这里有一个正式的问题。实际上,将图像之类的内容包含到库中非常简单:您可以在ng-packagr完成任务后手动将它们复制到dist文件夹中。

但是,在将使用您的库的项目中自动提取这些文件要困难得多。在上面引用的问题中,BenjaminDobler建议将以下映射添加到任何使用者项目的.angular-cli.json文件中:

代码语言:javascript
复制
{ "glob": "**/*", "input": "../node_modules/my-lib/assets", "output": "./assets/my-lib/" }

不过,我觉得这更像是一个NPM问题,也有一些普通的NPM解决方案,比如pkg-资产npm-资产

票数 16
EN

Stack Overflow用户

发布于 2020-02-23 17:12:52

这是一个旧线程,但在2020年2月仍在使用最新选项进行更新。

对于ng-packagr ^9.0.1版本,您可以使用内置的“复制资产”来完成此操作。

代码语言:javascript
复制
{
  "ngPackage": {
    "assets": [
      "CHANGELOG.md",
      "./styles/**/*.theme.scss"
    ],
    "lib": {
      ...
    }
  }
}

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

这帮助我删除了postpackage脚本。

添加我的实际ng-package.json以造福他人。我希望将“资产”文件夹及其所有内容复制到库中,并与其一起发布。

代码语言:javascript
复制
{
  "$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“使用。

票数 30
EN

Stack Overflow用户

发布于 2018-04-15 05:01:40

它可以在Linux上使用post*脚本实现自动化。

代码语言:javascript
复制
"scripts": {
    "package": "ng-packagr -p ng-package.json",
    "postpackage": "cp -R YOUR_ASSETS_FOLDER dist/YOUR_ASSETS_FOLDER && tar -cvzf dist.tgz -C dist .",
    "release": "npm publish dist"
}
票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46442949

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档