美文网首页
React antd iconfont组件

React antd iconfont组件

作者: 板栗炖牛肉 | 来源:发表于2020-11-17 09:42 被阅读0次

前言

使用antd框架的iconfont,并将其组件化,以及遇到的一些问题。

解决方案

1.iconfont组件化,自行去掉一些无关紧要的东西

import {
    createFromIconfontCN
} from '@ant-design/icons';
import PropTypes from 'prop-types';
import {iconFontUrl} from '../../../../Config'
import {loadLocalGallery} from "../../../../Config";
import icon from '../../../../../public/iconfont'

/**
 * 图标组件
 * 2020-7-6
 */
const IconFont = createFromIconfontCN({
    scriptUrl: loadLocalGallery ?
        icon
        :
        iconFontUrl
});

IconFont.propTypes = {
    //图标
    type: PropTypes.string.isRequired,
    //样式
    style: PropTypes.Object,
    //提示
    title: PropTypes.any,
    //样式类名
    className: PropTypes.any,
    //点击事件
    onClick: PropTypes.function,
};

export default IconFont;

2.上列代码注意一下,我本地化时,我只直接导入import icon from '../../../../../public/iconfont'的,这里是我遇到的一个坑。官方网站推荐的本地化是 scriptUrl: 'iconfont.js',其中iconfont.js是放在public下的,我这里也是放在public下的,但是有些情况二次刷新网页会不加载并且报错所以我这里直接import导入,没遇到这个问题可以不用管按照官网方式写

const IconFont = createFromIconfontCN({
    scriptUrl: loadLocalGallery ?
        'iconfont.js'
        :
        iconFontUrl
});

3.iconfont.js怎么来的,这里懒人写法:


image.png

直接本地建一个iconfont.js


image.png
官网上复制链接到浏览器,直接复制所有代码到js中,ok运行。



4.因为是引用src外文件所以需要单独配置,这里直接开另一篇文章:https://www.jianshu.com/p/e606793c0ad5

相关文章

网友评论

      本文标题:React antd iconfont组件

      本文链接:https://www.haomeiwen.com/subject/urczbktx.html