モジュールAにエクスポートされるクラス(IGeneric
)があり、そのモジュール(A)をモジュールBにインポートしましたが、そのエクスポートされたクラス(IGeneric
)をモジュールで使用できませんでしたB。
注:エクスポートされたクラスはコンポーネント、ディレクティブ、サービスではありません。プレーンなTypeScriptクラスです。
よろしくお願いします。エクスポートしようとしているクラス
export class IGeneric{
header : any[];
content : [{
lable :any,
value :any
}]
}
これは、(完全に異なる別個の)NgModuleシステムの問題ではなく、ES6/TypeScriptモジュールのインポート/エクスポートの問題のように見えます。この場合は、.tsファイルの先頭にある必要なファイルから必要なクラスをimport
する必要があります。例:
import { IGeneric } from './relative/path/to/definition';
次に、コンポーネント/サービスなどで通常使用するようにクラスを使用します
public generic: IGeneric;
hideモジュール内の詳細を barrel files
にするトリックがあります。
index.ts
という名前)をそのモジュールに導入するだけで、フォローアップとして、バレルファイルを使用して達成できることを詳しく説明する別の answer があります。
index
ファイルは、クラスのパス全体を表示したくない場合に役立ちます
MyModule
クラスを持つモジュールIGeneric
があると仮定します
igeneric.model.ts
export class IGeneric{
header : any[];
content : [{
lable :any,
value :any
}]
インデックスファイルは、Module MyModule
ディレクトリ内にある必要があります
index.ts
export * from 'app/MyModule/igeneric.model';
次に、コンポーネントでインポートできます
import {IGeneric} from 'app/MyModule'