primeng - PrimeNG 10.0.3 - 错误 NG8001:“p-tabView”不是已知元素
问题描述
我在 Angular 10 应用程序中使用 PrimeNG 10.0.3。在其中,我正在导入几个 PrimeNG 组件并毫无问题地使用它们。但是,当我尝试使用 TabView 模块时,我收到错误 NG8001: 'p-tabView' is not a known element以及错误 NG8001: 'p-tabPanel' is not a known element。
我创建了一个名为 primng.module 的模块,我在其中托管所有 PrimeNG 导入:
import { NgModule } from '@angular/core';
import { ButtonModule } from 'primeng/button';
import { BlockUIModule } from 'primeng/blockui';
import { ToastModule } from 'primeng/toast';
import { DialogModule } from 'primeng/dialog';
import { ConfirmDialogModule } from 'primeng/confirmdialog';
import { OverlayPanelModule } from 'primeng/overlaypanel';
import { PanelModule } from 'primeng/panel';
import { CardModule } from 'primeng/card';
import { SidebarModule } from 'primeng/sidebar';
import { InputMaskModule } from 'primeng/inputmask';
import { PasswordModule } from 'primeng/password';
import { TableModule } from 'primeng/table';
import { TabViewModule } from 'primeng/tabview';
import { ConfirmationService, MessageService } from 'primeng/api';
@NgModule({
imports: [
],
exports: [
ButtonModule,
BlockUIModule,
ToastModule,
DialogModule,
ConfirmDialogModule,
OverlayPanelModule,
PanelModule,
CardModule,
SidebarModule,
InputMaskModule,
PasswordModule,
TableModule,
TabViewModule
],
providers: [
MessageService,
ConfirmationService
]
})
export class PrimengModule { }
然后我将此模块导入为:
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { PrimengModule } from '../../primeng.module';
...
const routes: Routes = [
...
];
@NgModule({
declarations: [
...
],
imports: [
RouterModule.forChild(routes),
PrimengModule
],
exports: [
RouterModule
]
})
export class AdminRoutingModule { }
最后,我将 TabView 用作:
<p-tabView>
<p-tabPanel header="Header 1">
Content 1
</p-tabPanel>
<p-tabPanel header="Header 2">
Content 2
</p-tabPanel>
<p-tabPanel header="Header 3">
Content 3
</p-tabPanel>
</p-tabView>
我使用任何其他模块都没有问题,只是 TabView。
我错过了什么?
谢谢。
解决方案
好的,事实证明这与 PrimeNG 无关。我有 p-tabView 标记的托管组件被错误地声明在一个不同的模块中,该模块对我的primeng.module.ts一无所知,自然不知道如何处理TabView。
经验教训:注意您在哪个模块中声明每个组件。确保该模块知道您需要在组件中使用的功能。
推荐阅读
- c - 如何在c中从父进程重新启动子进程
- powershell - 如何将 Select-Object 的结果作为参数传递给命令
- azure - 我可以使用 microsoft azure 构建 ML 模型,然后将它们导出以在云端使用吗?
- oauth-2.0 - 使用微软日历,我尝试使用授权码获取访问令牌,但每次都会收到类似“invalid_grant”的错误消息
- r - In ggplot, How to reorder bars in a barplot according to height, while relocating specific bars to certain x axis positions?
- scala - 如何使函数在 Scala 2.13 中使用不同的集合类型?
- typescript - 如何在 reduxjs/toolkit 中使用服务 api 类
- postgresql - Postgres pgx 驱动程序在提交时挂起
- flutter - Flutter 计算功能需要时间才能开始执行
- c# - 使用 blazor 连接到 Sharepoint 站点