簡體   English   中英

在 Angular 的延遲加載模塊中顯示組件時出錯

[英]Getting error while displaying a component in lazy loaded module in Angular

我創建了一個組件,它的名稱是 s-header。 這個組件在 HomeModule 中注冊,因為它是這個模塊的一部分,但是當我嘗試在 home.component.html 中顯示這個組件時,它給了我這個錯誤。

如果“s-header”是 Angular 組件,則驗證它是否是該模塊的一部分。

如果“s-header”是 Web 組件,則將“CUSTOM_ELEMENTS_SCHEMA”添加到該組件的“@NgModule.schemas”以禁止顯示此消息。

這是我的代碼

import { HeaderComponent } from '../../general-components/header/header.component';

declarations: [
    HeaderComponent,
],

這是一個 header 組件

import { Component, OnInit } from '@angular/core';

@Component({
    selector: 's-header',
    templateUrl: './header.component.html',
    styleUrls: ['./header.component.css']
})
export class HeaderComponent implements OnInit {

    constructor() { }

    ngOnInit(): void {
    }
}

這就是我試圖展示它的方式

<s-header></s-header>

如果這是沒有 Ivy 的 Angular 版本 - 您還需要將此組件添加到延遲加載模塊的入口組件數組中。 這是因為該組件的工廠不存在(因為它來自延遲加載的模塊)

簡單地:

import { HeaderComponent } from '../../general-components/header/header.component';

declarations: [
    HeaderComponent,
...
],
entryComponents: [
    HeaderComponent
]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM