【发布时间】:2020-08-30 23:06:37
【问题描述】:
我有一个 Angular 9 库,我想将其推送到注册表。
当我运行 ng build <my-lib> 时,它可以正确构建,但它抱怨 Ivy:
******************************************************************************
It is not recommended to publish Ivy libraries to NPM repositories.
Read more here: https://v9.angular.io/guide/ivy#maintaining-library-compatibility
******************************************************************************
因此无法推送:
错误:试图发布已由 Ivy 编译的包。这是不允许的。
请在尝试发布之前删除并重新构建包,不要使用 Ivy 进行编译。
当我运行ng build <my-lib> --prod 时,它会抛出一个关于[hidden] 的错误:
[错误] 错误:无法绑定到“隐藏”,因为它不是“ng-content”的已知属性。
1. 如果 'hidden' 是 Angular 指令,则在该组件的 '@NgModule.imports' 中添加 'CommonModule'。
2. 要允许任何属性添加“NO_ERRORS_SCHEMA”到该组件的“@NgModule.schemas”。 ("][隐藏] = "!active">")
我验证并且我的所有模块都导入CommonModule。
为什么没有--prod 可以正常构建,但是当我想为--prod 构建它时它会报错?
【问题讨论】:
标签: angular ng-packagr