我创建 DynamicForm 组件,将其连接在两个NgModule中。

//  Module 1
@NgModule({
    imports: [],
    exports: [],
    declarations: [
        DynamicForm
    ],
    providers: []
})

//  Module 2
@NgModule({
    imports: [],
    exports: [],
    declarations: [
        DynamicForm
    ],
    providers: []
})

但是项目不起作用,任何错误。当我从NgModule之一中删除 DynamicForm 时,我需要包含此组件的错误。我也尝试将 DynamicForm 连接到app.module并从NgModule中删除,这也没有用。

该怎么办?

最佳答案

组件只能是一个模块的一部分。因此,如果您有一个应由多个模块使用的组件,请创建一个共享模块,在其中声明它,然后导出以便其他人可以使用它。然后将该共享模块导入到需要该组件的模块中

@NgModule({
  declarations: [
    DynamicForm
  ],
  exports: [
    DynamicForm
  ]
})
export class SharedModule {}

@NgModule({
  imports: [ SharedModule ]
})
class ModuleThatNeedsDynamicForm {}

关于Angular2-在两个不同的模块中声明一个组件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39756104/

10-12 00:25
查看更多