Angular 无法使用ngPackagr使用资源/图像创建角度模块
我正在使用ngPackagr创建一个角度可重用模块。这里的一切都很好,但是我在安装组件的最终版本中没有出现我在内部提到的图像。我已尝试使用以下线程中的操作:Angular 无法使用ngPackagr使用资源/图像创建角度模块,angular,ng-packagr,Angular,Ng Packagr,我正在使用ngPackagr创建一个角度可重用模块。这里的一切都很好,但是我在安装组件的最终版本中没有出现我在内部提到的图像。我已尝试使用以下线程中的操作: 但它们似乎都没有起作用。这里有人能帮忙吗 这是因为您必须将这些图像添加到使用该软件包的应用程序中的角度编译中。为此,您必须编辑此应用程序的angular.json文件。假设包中的静态资产(图像、字体等)位于[your_package]/assets内,那么您应该向实现包的应用程序的angular.json文件中添加类似的内容: "buil
但它们似乎都没有起作用。这里有人能帮忙吗 这是因为您必须将这些图像添加到使用该软件包的应用程序中的角度编译中。为此,您必须编辑此应用程序的
angular.json
文件。假设包中的静态资产(图像、字体等)位于[your_package]/assets
内,那么您应该向实现包的应用程序的angular.json
文件中添加类似的内容:
"build": {
// ...,
"options": {
// ...,
"assets": [
// ...,
{
"glob": "**/*",
"input": "[PATH_TO_NODE_MODULES]/[YOUR_PACKAGE]/assets",
"output": "[PATH_TO_TARGET_PROJECT_ASSETS_FOLDER]"
}
]
}
}
因此,当angular编译时,它将“抓取”包中的资源,并将它们“复制”到output
上指定的路径中
为此,映像必须位于分布式软件包内,通常ngPackagr不会复制软件包中的静态资产,因此您应该在生成之后和发布/打包之前复制它们。您可以使用package.json
脚本执行此操作,例如:
"pack": "ng build && cp -r ./src/assets dist npm pack"
或
要测试您的资产是否达到最终版本,您可以在实现包的应用程序中运行
ng build--prod
。这将生成一个dist文件夹,在此文件夹(或子文件夹)中,您应该可以找到您的包图像。您解决了此问题吗?
"publish": "ng build && cp -r ./src/assets dist npm publish"