【问题标题】:Angular2 how to declare common component on root moduleAngular2如何在根模块上声明公共组件
【发布时间】:2017-03-03 17:05:56
【问题描述】:

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

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

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

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

如果我在每个子模块中声明它,它就会起作用。

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

// 根模块

@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() {}
}

【问题讨论】:

    标签: angular


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-02-02
      • 1970-01-01
      • 2017-05-15
      • 1970-01-01
      • 2017-01-26
      • 2023-03-27
      • 2018-10-10
      • 1970-01-01
      相关资源
      最近更新 更多