私はモジュールにいくつかのクラスを含めたいので、モジュールを別のパッケージとしてインポートし、それらのクラスを使用することができます。ここで小さな例です:角2/4:NgModuleでクラスをカプセル化することは可能ですか?
human.ts(私のクラスファイル)
export class Human {
private numOfLegs: Number;
constructor() {
this.numOfLegs = 2;
}
}
test.module.ts(私のモジュールファイル)
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { Human } from './human';
@NgModule({
imports: [CommonModule],
declarations: [
Human
],
providers: [],
exports: [Human]
})
export class TestModule {}
方法コンポーネント内のHumanクラスをインスタンス化するのですか? 私は両方を試してみた:
import { TestModule } from './test.module';
と
import { Human } from './test.module';
しかし、私はnew Human()
をすれば、私はまだcannot find name Human
Httpやその他のオブジェクトを使用する場合と同じように、コンポーネントを使用するには、引き続きHumanをインポートする必要があると思います。 – hayhorse
私は複写に投票したスレッドで、答えが述べられています。ところで、サービスをNgModuleにインポートする場合でも、クラスを使用するコンポーネントにインポートする必要があります。 JavaScriptのインポートとNgModuleのインポートは2つの全く異なるものですが、ちょっと混乱するかもしれません。 –
私がしようとしていることは間違っていますか? – leota