すべてのangularライブラリをangular 9.0.0
を使用してng update
にアップグレードしました。それらをビルドしようとすると、以下のエラーが発生しました。
エラー:
サポートされないプライベートクラスSomeComponent。このクラスは、SomeModule-> SomeComponentを介してコンシューマに表示されますが、トップレベルのライブラリエントリポイントからエクスポートされません。
誰かがこのエラーを解決しましたか?
このエラーは、ライブラリを作成していて、ライブラリモジュールのインポートに誤ったコンポーネントが含まれている場合にも発生します。
import { NgModule } from '@angular/core';
import { LibComponent } from './lib.component';
import { ComponentWithinComponent } from './component-within/component-within.component'
@NgModule({
declarations: [LibComponent, ComponentWithinComponent],
imports: [
ComponentWithinComponent
],
exports: [LibComponent, ComponentWithinComponent]
})
export class LibModule { }
ng build lib
//results in
Error NG6002: Appears in the NgModule.imports of LibModule, but could not be resolved to an NgModule class.
Is it missing an @NgModule annotation?
8 export class ComponentWithinComponent implements OnInit {
修正は、次のようにlib.moduleのComponentWithinComponentインポートを削除することです。
@NgModule({
declarations: [LibComponent, ComponentWithinComponent],
imports: [
// don't import here
],
exports: [LibComponent, ComponentWithinComponent]
})
export class LibModule { }