Angular 9 - 不是已知元素

Luc*_*kyy 4 angular-routing angular angular8 angular9

它一直工作到 Angular 7,现在更新后它会抛出未知元素的错误。共享模块会发生这种情况。

可重现的代码: - https://stackblitz.com/edit/angular-ivy-pb3eea

所以我有一个父组件“Parent”,子组件在“Parent”的路由器内使用 - “Child”,一个共享组件在父组件和子组件内部使用 - “Shared”

所以我已经导入了父模块和子模块。(与使用惰性模块一样),在父级中它可以工作,但在子级中则不起作用。

import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { TestChildRoutingModule} from './test-child.routing.module';
import { SharedModule } from '../shared/shared.module';

@NgModule({
    declarations: [
    ],
    imports: [
        CommonModule,
        SharedModule,
        TestChildRoutingModule
    ],
    exports: [
    ]
})
export class TestChildModule { }

Run Code Online (Sandbox Code Playgroud)

Saj*_*ran 5

您缺少 TestChildModule 中 TestChildComponent 的声明

@NgModule({
    declarations: [
      TestChildComponent
    ],
    imports: [
        CommonModule,
        SharedModule,
        TestChildRoutingModule
    ],
    exports: [
      TestChildComponent
    ]
})
export class TestChildModule { }
Run Code Online (Sandbox Code Playgroud)

这是固定的STACKBLITZ

  • 我正要发布同样的内容:) +1 (2认同)