web-dev-qa-db-ja.com

Angular 2:モジュール上のコンポーネントをエクスポートし、モジュール内でインポートして使用する

CustomerInfoComponentをエクスポートするCustomerInfoModuleという機能モジュールがあります。下記参照。

import {NgModule} from '@angular/core'
import {RouterModule}  from '@angular/router'

import {CustomerInfoComponent} from './customer-info.component'

@NgModule({
declarations:[CustomerInfoComponent],
exports:[CustomerInfoComponent]
})
export class CustomerInfoModule{
}

MissedCollectionsComponent内でこのCustomerInfoComponentをインポートして使用します。 TypeScriptエラーが発生しています

「.module」にはエクスポートされたメンバー「CustomerInfoComponent」がありません

import {NgModule} from '@angular/core'
import {RouterModule} from '@angular/router'

import {MissedCollectionsComponent} from './missed-collections.component'

import {CustomerInfoComponent} from '../shared/customer/customer-info.module'

@NgModule({
imports:[RouterModule.forChild([
        {path:'missedcollection',component:MissedCollectionsComponent},
        {path:'missedcollection/customerinfo',component:CustomerInfoComponent}
    ]),
    CustomerInfoModule],
declarations:[],
exports:[]
})
export class MissedCollectionsModule{

}

Angular2ドキュメントによると、次のように書かれています

「ContactComponentをエクスポートして、ContactModuleをインポートする他のモジュールがコンポーネントテンプレートに含めることができるようにします。」 リンク

モジュールからコンポーネントをインポートし、別のモジュール内で使用することは論理的ではありませんか?私はそれを考えて間違っている/または何かを逃していますか?

13
Prabash B

モジュールファイルからインポートするため、次のようなことができます。

customer-info.module.ts

import {CustomerInfoComponent} from './customer-info.component';
export {CustomerInfoComponent};
3
Tiep Phan