logo

Ant Design Pro自定义菜单Icon

起筆於:發佈於:文集:随笔

Ant Design Pro菜单要使用自定义icon,搜到的方法基本都是通过​layout​的​menuItemRender​之类的API。最近浏览文档,发现umi文档表示路由配置兼容icons功能,但是实测在开启该功能的前提下,生成的布局代码不能正常加载icon。

直接在umi代码库内搜索相关代码,发现umi的icons功能,是使用esbuild提取相关的字符串字面量实现的,于是在生成布局时额外加一段输出​<Icon icon="${icon}" />​的逻辑,相关PR已被合并,之后要使用自定义图标,可以先打开icons功能:

icons: {},

之后routes中就可以:

export default [
  {
    path: '/welcome',
    name: 'welcome',
    icon: 'lucide:house',
    component: './Welcome',
  },
  {
    path: '/admin',
    name: 'admin',
    icon: 'local:crown',
  },
]
EOF
文章有帮助?为我充个
版权声明