带有 Font Awesome 图标的 Ag-grid cellRenderer

TyC*_*x94 1 font-awesome ag-grid angular ag-grid-angular

我正在尝试通过 ag-grid 中的 cellRenderer 添加Font Awesome图标。

如何<fa-icon>在单元格渲染中正确渲染标签?

这是我尝试的:

    {
      width: 150,
      headerName: 'Events',
      // tslint:disable-next-line: object-literal-shorthand
      cellRenderer: (params: any) => {
        const PHD: boolean = params.data.PHD;
        const DG: boolean = params.data.DG;
        const HOT: boolean = params.data.HOT;
        let result = '';
        if (PHD) {
          result = result + '<fa-icon [icon]="faCoffee"></fa-icon>';
        }
        if (DG) {
          result = result + '';
        }
        if (HOT) {
          result = result + '';
        }
        return result;
      },
      resizable: true,
      filter: false,
    },
Run Code Online (Sandbox Code Playgroud)

以下是它从 cellRenderer 渲染的方式:

将标签放置在组件 HTML 中可以正常工作并呈现到页面,如下所示:

Pra*_*hat 5

fa-icon是一个自定义角度组件,不会被简单的单元格渲染器解析。

而不是这个

'<fa-icon [icon]="faCoffee"></fa-icon>'
Run Code Online (Sandbox Code Playgroud)

你应该使用更简单的<i>方法

'<span><i class="fa fa-coffee"></i></span>';
Run Code Online (Sandbox Code Playgroud)

让您的简单单元格渲染器正常工作。

但是,如果您仍然想使用 fa-icon 角度组件,那么您应该考虑实现一个单元格渲染器组件,如此处所述

  • &lt;i&gt; 示例不起作用,但单元格渲染器组件示例起作用了!感谢你们。 (2认同)