Angular2如何声明根模块上的公共组件

问题描述:

我有两个根模块(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() {} 
} 

如果你想使用的声明从另一个模块,您需要导入其他模块。这是没有办法的。每个模块都需要明确其相关性。 没有全局组件,指令或管道。 只能在全球范围内提供服务。