【问题标题】:'p-header' is not a known element in PrimeNg for Angular2 application对于 Angular2 应用程序,“p-header”不是 PrimeNg 中的已知元素
【发布时间】:2017-06-07 23:32:44
【问题描述】:

我正在为我的 angular2 项目使用 PrimeNg,并且我正在尝试在页面中添加面板。我使用了以下代码,这是我从primeng教程(http://www.primefaces.org/primeng/#/panel)中获取的:-

我的 html 文件有以下代码:-

<p-panel>
   <p-header>
      Header content here
   </p-header>
  Body Content
</p-panel>

我在我的模块中添加了从primeng导入的必需模块:-

   import { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
   import { MyComponent } from './my.component';
   import { CommonModule } from '@angular/common';
   import { SharedModule, PanelModule } from 'primeng/primeng';


 @NgModule({
  imports: [
    CommonModule, SharedModule, PanelModule
   ],
   declarations: [MyComponent],
   schemas: [CUSTOM_ELEMENTS_SCHEMA ]
   })
  export class ThemeModule { }

这会在控制台中抛出以下错误:-

异常:未捕获(承诺):错误:模板解析错误: 'p-header' 不是已知元素: 1. 如果“p-header”是一个 Angular 组件,那么验证它是这个模块的一部分。 2. 如果“p-header”是一个 Web 组件,则将“CUSTOM_ELEMENTS_SCHEMA”添加到该组件的“@NgModule.schemas”以禁止显示此消息。 ("

【问题讨论】:

  • PrimeNG != PrimeFaces。更正标记
  • &lt;p-header&gt; 从 PrimeNG 2.0.0 开始引入。在以前的版本中,这个标签是未知的。你运行的是哪个版本?
  • 感谢 Emdee 解决了。是版本问题。

标签: angular primeng


【解决方案1】:

随着 2.0-RC.1 primeng 的更改,如果您升级您的版本,它将工作。

【讨论】:

  • 如何更改primeng版本...通过安装或更改package.json文件
【解决方案2】:

尝试导入 SharedModule 来解决这个问题

import {ChartModule, CalendarModule, SharedModule} from 'primeng/primeng';

@NgModule({
imports: [
    CommonModule,
    FormsModule,
    CalendarModule,
    SharedModule,
],

【讨论】:

    【解决方案3】:

    这是版本问题。它适用于版本 2。

    【讨论】:

    • 你是怎么升级的?
    【解决方案4】:

    版本 8.0.0 中有一个新模块。 你可以添加

    import {CardModule} from 'primeng/card';
    

    解决这个问题

    【讨论】:

      猜你喜欢
      • 2019-06-22
      • 1970-01-01
      • 2020-06-19
      • 2017-11-03
      • 2017-05-07
      • 2020-09-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多