【问题标题】:Blank Icon when using Material Icons in PrimeNg MenuBar在 PrimeNg 菜单栏中使用材质图标时的空白图标
【发布时间】:2021-12-27 06:17:58
【问题描述】:

我们正在使用 Angular 12。由于材质库有更多的图标,我们有兴趣在 PrimeNg MenuBar 中使用该图标

<p-menubar [model]="menu"></p-menubar>

但是,那些素材图标并没有出现在屏幕上。它只是没有图标的空白。

this.menu = [{
      label: 'Products',
      icon: 'pi pi-fw pi-user-edit',
      items: [{
              label: 'New / Update', icon: 'how_to_reg', routerLink: ['/products']
          },
          {
            label: 'Review', icon: 'task', routerLink: ['/review']
          }]
    }];

有什么建议吗?

已尝试解决方案

  • 添加前缀“ui-icon-”
  • 仅使用图标名称

【问题讨论】:

    标签: angular angular-material icons primeng menuitem


    【解决方案1】:

    我不确定icon: 'pi pi-fw pi-user-edit',

    但要使用 Angular 材质图标:

    • 通过ng add @angular/material在项目中安装Angular Material

    • 使用
      import {MatIconModule} from '@angular/material/icon';在module.ts中导入MatIconModule

    • 在你的menubar 组件中,你可以有类似的东西:

    &lt;mat-icon&gt;{{menu.icon}}&lt;/mat-icon&gt;

    Mat Icon Module的示例和API

    • 在父组件中:
    this.menu = [{
          label: 'Products',
          icon: 'person',
          items: [{
                  label: 'New / Update', icon: 'how_to_reg', routerLink: ['/products']
              },
              {
                label: 'Review', icon: 'task', routerLink: ['/review']
              }]
        }];
    

    这里person是图标的值,可以在这里找到:Angular Material IconsI

    【讨论】:

    • 材质图标已在项目中使用。这里唯一的问题是,菜单栏组件没有任何自定义模板的选项。更多详情:primefaces.org/primeng/showcase/#/menubar
    • @VaibhavSawant 您是否在 module.ts 文件中导入了 MenubarModule? import { MenubarModule } from 'primeng/menubar';
    • 另外,尝试使用 MenuItem 类初始化您的本地 menu 变量。 private items: MenuItem[];import {MenuItem} from 'primeng/api';
    猜你喜欢
    • 2020-09-30
    • 2017-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-15
    • 1970-01-01
    • 2016-09-08
    相关资源
    最近更新 更多