2017-07-17 200 views
1

的範圍。如果我有三個模塊什麼是角模塊導入

  1. 的AppModule
  2. SharedModule
  3. ItemModule

的SharedModule裏面我有一個導出的PaginatorComponent如下:

shared.module.ts

import { NgModule } from '@angular/core'; 
import { CommonModule } from '@angular/common'; 

import { PaginatorComponent } from './paginator/paginator.component'; 

@NgModule({ 
    imports: [ 
     CommonModule 
    ], 
    declarations: [ 
     PaginatorComponent 
    ], 
    providers: [], 
    exports: [ 
     PaginatorComponent 
    ] 
}) 
export class SharedModule { } 

我用線

app.module.ts

import { SharedModule } from './shared/shared.module'; 

imports: [ 
     ... 
     SharedModule, 
     ... 

問題然後導入共享模塊到我的AppModule;我的第三個「ItemModule」應該自動訪問PaginatorComponent還是需要直接導入第三個模塊?目前我得到一個通用錯誤的變化:

Can't bind to 'totalItems' since it isn't a known property of 'app-paginator'. 
1. If 'app-paginator' is an Angular component and it has 'totalItems' input, then verify that it is part of this module. 

非常感謝。

+1

可能會有幫助嗎? https://medium.com/@cyrilletuzi/understanding-angular-modules-ngmodule-and-their-scopes-81e4ed6f7407 – Rama

+0

謝謝!有答案。 – prime

回答

2

這事時,我開始角度2 +/

您需要重新導入每次每個模塊中使用組件我誤解。

有了你舉例來說,如果你需要使用PaginatorComponent到您ItemModule,你將需要進口SharedModule到您ItemModule,使其工作。 (因爲SharedModule導出PaginatorComponent)

服務/提供者不是這種情況。如果您注入服務,每個子組件都可以訪問它。

相關問題