シナリオ:
を使用してカスタム UI ライブラリを作成しng-packagr
、エクスポートされたカスタムcomponents
クラスといくつかのモデル クラスを作成しました。
問題:
メイン プロジェクトでは、import
ステートメントはエクスポートされたコンポーネントに対しては正常に機能しますが、エクスポートされたクラスに対しては機能せずwebpack
、コンパイルに失敗してエラーが発生します。
モジュールが見つかりませんエラーを解決できません
my-custom-library/models
ライブラリ プロジェクト コード:
モデル クラス: src/app/modules/my-custom-module/models/my-model.ts
export class MyModel {
constructor() {
// default values for props here
}
// ...props here
}
インデックス ファイル: src/app/modules/my-custom-module/models/index.ts
export * from './my-model';
export * from './my-other-model';
ルートのエクスポート ファイル: models.ts
export * from './src/app/modules/my-custom-module/models/index';
ng-packagr
ルートのファイル: public_api.ts
export * from './models';
export * from './src/app/modules/my-custom-module/my-custom-module.module';
export * from './src/app/modules/my-custom-module/components/index';
主なプロジェクト コード:
import {MyCustomModule} from 'my-custom-library'; // works
import {MyModel} from 'my-custom-library'; // works
import {MyModel} from 'my-custom-library/models'; // does not works
目的: エンド デベロッパー向けの UI ライブラリ API の簡素化と分割。
webpack
VS Code が を認識しimport
、インテリセンスが機能し、Ctrl + Click
正しいファイルに移動することさえあるため、モジュールの解決のマッピングについて何かが欠けていると思いますがwebpack
、コンパイルに失敗します。