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

uni-icons自定义图标详细步骤及踩坑经历

一、详细步骤

获取图标

1.访问iconfont-阿里巴巴矢量图标库,搜索图标并加入购物车:

2.点击页面右上角购物车图标 ,点击添加至项目,如没有项目,需要点击下图第二步的图标新建一个项目目录,如已经有项目则可以忽略第二步,选择项目后点击确定:

3.确定后进入项目,点击项目设置 ,对图标库进行一些设置:

4.项目名称和项目描述根据自己需求填写, fontClass 是图标的前缀 ,需要传入组件type属性,fontFamily 是图标集名称,需要传入组件custom-prefix 属性,字体格式可以只勾选 ttf:

5.点击保存后 ,可以下载到本地:

6.将 iconfont.ttf、iconfont.css 放到项目根目录 static 下。

7.打开 iconfont.css ,修改 @font-face 如下,注意 src 字体文件的引用路径是否正确:

@font-face {font-family: "iconfont"; src: url('/static/iconfont.ttf') format('truetype');
}.iconfont {font-family: "iconfont" !important;font-size: 16px;
}.icon-search:before {content: "\e65c";
}

在 vue 页面使用自定义图标

在项目根目录的 App.vue 中,引入上述的 iconfont.css,注意自己存放的路径,且通过 @import 引入的外部样式,需要写在 style 标签有效内容中的最前面。

<!-- App.vue -->
<style>
@import "@/static/iconfont.css";
</style>

使用 custom-prefix 和 type 属性自定义图标

<uni-icons custom-prefix="iconfont" type="icon-search" size="30"></uni-icons>

二、踩坑经历

在线引入阿里巴巴矢量图标库

1.点击生成代码:

2.远程引用:

复制代码到本地要使用图标的vue文件中。

<template><view><uni-icons fontFamily="iconfont" type="star" :size="30">{{'&#xe600;'}}</uni-icons></view>
</template>
<script setup></script>
<style lang="scss" scoped>@font-face {font-family: 'iconfont';  src: url('https://at.alicdn.com/t/c/font_4690576_r6jvprb1guf.ttf?t=1727062386440') format('truetype');}
</style>

注意

1.复制地址没有https,注意要在url()内部加上https:

2.每一次新增图标,必须更新代码,并在自己代码中修改为更新后的url,否则新添加的图标无法使用。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【hot100-java】【完全平方数】
  • iOS 巨魔技巧:一键汉化巨魔商店
  • 【自定义函数】讲解
  • Python Web 面试题
  • 4.结构型设计模式 - 第1回:引言与适配器模式 (Adapter Pattern) ——设计模式入门系列
  • 架构设计笔记-5-软件工程基础知识
  • 黑马智数Day2
  • 【protobuf】ProtoBuf的学习与使用⸺C++
  • Go语言语法基础
  • 蓝禾,汤臣倍健,三七互娱,得物,顺丰,快手,游卡,oppo,康冠科技,途游游戏,埃科光电25秋招内推
  • GNU链接器(LD):设置入口点(ENTRY命令)的用法及实例解析
  • 【python】requests 库 源码解读、参数解读
  • 使用 Python 模拟光的折射,反射,和全反射
  • 【技术解析】wx.request 封装:优化小程序网络请求的最佳实践
  • 人工智能面试题(Artificial Intelligence Algorithm Interview Questions)
  • 【EOS】Cleos基础
  • 【Under-the-hood-ReactJS-Part0】React源码解读
  • docker python 配置
  • JavaScript异步流程控制的前世今生
  • JSONP原理
  • Next.js之基础概念(二)
  • Python中eval与exec的使用及区别
  • supervisor 永不挂掉的进程 安装以及使用
  • 初探 Vue 生命周期和钩子函数
  • 动态魔术使用DBMS_SQL
  • 飞驰在Mesos的涡轮引擎上
  • 运行时添加log4j2的appender
  • 自定义函数
  • Spring第一个helloWorld
  • UI设计初学者应该如何入门?
  • ​【原创】基于SSM的酒店预约管理系统(酒店管理系统毕业设计)
  • ​你们这样子,耽误我的工作进度怎么办?
  • #java学习笔记(面向对象)----(未完结)
  • #NOIP 2014#day.2 T1 无限网络发射器选址
  • #我与Java虚拟机的故事#连载14:挑战高薪面试必看
  • (02)Unity使用在线AI大模型(调用Python)
  • (21)起落架/可伸缩相机支架
  • (3)Dubbo启动时qos-server can not bind localhost22222错误解决
  • (C语言)strcpy与strcpy详解,与模拟实现
  • (NO.00004)iOS实现打砖块游戏(九):游戏中小球与反弹棒的碰撞
  • (Redis使用系列) Springboot 使用redis的List数据结构实现简单的排队功能场景 九
  • (附源码)springboot 个人网页的网站 毕业设计031623
  • (附源码)springboot电竞专题网站 毕业设计 641314
  • (含笔试题)深度解析数据在内存中的存储
  • (南京观海微电子)——I3C协议介绍
  • (十七)Flink 容错机制
  • (算法)求1到1亿间的质数或素数
  • (五)网络优化与超参数选择--九五小庞
  • (一)认识微服务
  • (转)创业家杂志:UCWEB天使第一步
  • (转)大型网站的系统架构
  • (转)机器学习的数学基础(1)--Dirichlet分布
  • (转载)CentOS查看系统信息|CentOS查看命令
  • ***通过什么方式***网吧
  • . Flume面试题