2017-03-03 98 views
1

我有兩個根模塊(AppModule)下的子模塊(ClientModule和AdminModule)。Angular2如何聲明根模塊上的公共組件

而我有一個公共庫組件(文件上載),我想在兩個子組件中使用。

所以我乾脆宣佈根模塊共同庫組件和子模塊中使用它,然後我得到一個錯誤,

如果「應用程序,文件上傳」是角狀的部件,然後驗證它是 這個模塊的一部分。

而且,如果我在每個子模塊中聲明,它的工作原理。

但我只是想在根模塊中聲明通用庫,以便所有子模塊都可以使用它。可能嗎?如果是的話,該怎麼做?

//根模塊

@NgModule({ 
    imports: [ 
    ... 
    ClientModule, 
    AdminModule, 
    ], 
    declarations: [ 
    FileUploaderComponent //(x) 
    ], 
    ... 
}) 
export class AppModule { } 

//文件上傳

@Component({ 
    selector: 'app-file-uploader', 
    templateUrl: './file-uploader.component.html', 
}) 
export class FileUploaderComponent { 

    public constructor() {} 
} 

回答

3

如果你想使用的聲明從另一個模塊,您需要導入其他模塊。這是沒有辦法的。每個模塊都需要明確其相關性。 沒有全局組件,指令或管道。 只能在全球範圍內提供服務。