You need to enable JavaScript to run this app. 部分NG-ZORRO图标无法正常渲染问题排查求助
优惠活动
大模型
产品
解决方案
定价
更多

部分NG-ZORRO图标无法正常渲染问题排查求助

问题原因

NG-ZORRO 9.0及以上版本默认启用图标按需加载机制,未手动注册的图标无法正常渲染。你当前可以正常显示的2个图标,是项目中引入的其他NG-ZORRO组件内部已经完成注册的,剩下3个未注册的图标自然无法渲染。

解决方案

方案1:批量导入全量图标(适合开发阶段快速验证)

直接在项目根模块(AppModule)中注册所有图标,无需单独维护用到的图标列表:

import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { NzIconModule, IconDefinition } from 'ng-zorro-antd/icon';
import * as AllIcons from '@ant-design/icons-angular/icons';

@NgModule({
  imports: [
    BrowserModule,
    // 其他全局模块...
    NzIconModule.forRoot([...Object.values(AllIcons) as IconDefinition[]])
  ],
  // 其他配置...
})
export class AppModule { }

方案2:按需导入指定图标(推荐生产环境使用,减小打包体积)

仅注册你当前用到的图标,减少冗余资源:

import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { NzIconModule } from 'ng-zorro-antd/icon';
// 导入需要的图标
import { 
  StepBackwardOutline, 
  DownOutline, 
  CaretLeftOutline, 
  DoubleRightOutline, 
  SettingOutline 
} from '@ant-design/icons-angular/icons';

@NgModule({
  imports: [
    BrowserModule,
    // 其他全局模块...
    NzIconModule.forRoot([
      StepBackwardOutline,
      DownOutline,
      CaretLeftOutline,
      DoubleRightOutline,
      SettingOutline
    ])
  ],
  // 其他配置...
})
export class AppModule { }

注意事项

NzIconModule.forRoot() 仅需在根模块调用一次,业务特性模块直接引入NzIconModule即可,无需重复注册图标。


内容的提问来源于stack exchange,提问作者XQ_CHIA

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.10 11:00:02