当前位置: 首页 > news >正文

从零开始搭建React+TypeScript+webpack开发环境-使用iconfont构建图标库

创建iconfont项目

进入iconfont官网,完成注册流程,即可创建项目。

无法访问iconfont可尝试将电脑dns改为阿里云镜像223.5.5.5和223.6.6.6

在这里插入图片描述

添加图标

在图标库里选择图标,加入购物车

在这里插入图片描述

将图标添加到之前创建的项目中

请添加图片描述

生成代码

在这里插入图片描述

将代码配置到项目里

复制代码

在这里插入图片描述

配置到webpack里

在这里插入图片描述

在网页模板里引用

在这里插入图片描述

开发图标组件

components文件夹下创建Icon组件

import React, { DetailedHTMLProps, HTMLAttributes } from 'react';interface IconPropsextends DetailedHTMLProps<HTMLAttributes<HTMLElement>, HTMLElement> {type: string;
}const Icon: React.FC<IconProps> = ({ type, className, ...rest }) => (<i className={className} {...rest}><svg className="zhique-icon" aria-hidden="true"><use xlinkHref={`#zhique-icon-${type}`} /></svg></i>
);export default Icon;

global.less里添加样式

.zhique-icon {width: 1em; height: 1em;vertical-align: -0.15em;fill: currentcolor;overflow: hidden;}

使用组件

import React from 'react';import { Icon } from '@/components';export default () => (<div><Icon type="compass" /></div>
);

在这里插入图片描述

相关文章:

  • 【扩散模型】5、Diffusion models beat GAN | 使用类别引导图像生成
  • 【腾讯云|云原生】自定制轻量化表单Docker快速部署
  • Python知识点——高维数据的格式化
  • java中拼接“
  • 【GitHub】Watch、Star、Fork、Follow 有什么区别?
  • 【多线程面试题二十三】、 说说你对读写锁的了解volatile关键字有什么用?
  • MFC 基础篇(一)
  • uniapp踩坑之项目:uniapp数字键盘组件—APP端
  • js原型链
  • CVF 在 TNEWS 数据集上测试
  • leetcode:13. 罗马数字转整数(python3解法)
  • 【Linux】:初识git || centos下安装git || 创建本地仓库 || 配置本地仓库 || 认识工作区/暂存区(索引)以及版本库
  • 5G创新突破 | 紫光展锐5G芯片全球首发R17 NR广播端到端业务演示
  • 为什么 conda 不能升级 python 到 3.12
  • python 按字段查询数据库
  • 230. Kth Smallest Element in a BST
  • javascript数组去重/查找/插入/删除
  • SpiderData 2019年2月13日 DApp数据排行榜
  • Unix命令
  • vuex 学习笔记 01
  • vue从创建到完整的饿了么(11)组件的使用(svg图标及watch的简单使用)
  • 阿里云爬虫风险管理产品商业化,为云端流量保驾护航
  • 分布式事物理论与实践
  • 精彩代码 vue.js
  • 你不可错过的前端面试题(一)
  • 如何学习JavaEE,项目又该如何做?
  • 用jQuery怎么做到前后端分离
  • mysql面试题分组并合并列
  • ​RecSys 2022 | 面向人岗匹配的双向选择偏好建模
  • ​如何防止网络攻击?
  • ![CDATA[ ]] 是什么东东
  • #WEB前端(HTML属性)
  • #我与Java虚拟机的故事#连载12:一本书带我深入Java领域
  • (3)(3.5) 遥测无线电区域条例
  • (M)unity2D敌人的创建、人物属性设置,遇敌掉血
  • (zt)最盛行的警世狂言(爆笑)
  • (二)hibernate配置管理
  • (二)PySpark3:SparkSQL编程
  • (篇九)MySQL常用内置函数
  • .NET Framework .NET Core与 .NET 的区别
  • .Net 访问电子邮箱-LumiSoft.Net,好用
  • .net(C#)中String.Format如何使用
  • .net下简单快捷的数值高低位切换
  • @synthesize和@dynamic分别有什么作用?
  • [2544]最短路 (两种算法)(HDU)
  • [4.9福建四校联考]
  • [ACTF2020 新生赛]Upload 1
  • [AIGC] 开源流程引擎哪个好,如何选型?
  • [AX]AX2012 SSRS报表Drill through action
  • [C#]使用DlibDotNet人脸检测人脸68特征点识别人脸5特征点识别人脸对齐人脸比对FaceMesh
  • [C++]AVL树怎么转
  • [CERC2017]Cumulative Code
  • [Go WebSocket] 多房间的聊天室(三)自动清理无人房间
  • [hive] posexplode函数
  • [java]删除数组中的某一个元素