繁体   English   中英

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

[英]Angular2 how to declare common component on root module

我在根模块(AppModule)下有2个子模块(ClientModule和AdminModule)。

我有一个公共的库组件(文件上传器),我想在两个子组件中使用它。

所以我只是在根模块中声明公共库组件并在子模块中使用它,然后我收到错误,

如果'app-file-uploader'是Angular组件,则验证它是否是此模块的一部分。

如果我在每个子模块中声明它都有效。

但我只是想在根模块中声明公共库,以便所有子模块都可以使用它。 可能吗? 如果是的话,怎么做?

//根模块

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

// file-uploader

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

    public constructor() {}
}

如果要使用其他模块的声明,则需要导入该其他模块。 没有办法解决这个问题。 每个模块都需要明确其依赖关系。 没有全局组件,指令或管道。 只能在全球范围内提供服务。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM