在uni-app使用iconfont中的图标

uni-app 如何使用iconfont中的图标

图片

在uni-app中使用Iconfont图标通常涉及以下几个步骤:

步骤一:获取Iconfont资源

  1. 访问 iconfont-阿里巴巴矢量图标库,注册并登录账号。

  2. 浏览或搜索所需的图标,将它们添加至购物车或直接创建项目进行管理。

  3.  完成图标选择后,进入“我的项目”,点击对应项目的“下载”按钮,选择“WebFont”格式下载。下载得到的压缩包通常包含以下文件:

  • iconfont.css 或 iconfont.min.css:包含字体文件的引用及样式声明。
  • iconfont.eoticonfont.ttficonfont.wofficonfont.woff2等字体文件。
  • demo_index.html:示例文件,展示如何在HTML中使用这些图标。

步骤二:整合Iconfont资源到uni-app项目

  1. 将字体文件放入项目

    • 将下载的字体文件(.eot.ttf.woff.woff2)放入uni-app项目的static目录下,例如创建一个子目录fonts存放它们,以便统一管理。

  2. 引入Iconfont样式

    • iconfont.cssiconfont.min.css文件复制到项目的static目录或uni.scss所在的样式目录(如/common)。

    • main.js或全局样式文件(如uni.scss)中通过@import语句引入Iconfont样式。例如,如果将iconfont.css放在static目录下,则引入语句如下:

      @import "~@/static/iconfont.css";

步骤三:在Vue页面或组件中使用Iconfont图标

使用Unicode编码
  • 查看下载包中的demo_index.html或直接在Iconfont网站上查看每个图标的Unicode编码。

  • 在Vue模板中,使用<text>标签结合v-for循环(如果有多图标)或直接插入Unicode编码来显示图标:

    <template><view><!-- 单个图标 --><text class="iconfont">图标Unicode编码</text><!-- 循环显示多个图标 --><view v-for="(icon, index) in iconsList" :key="index"><text class="iconfont">{{ icon.unicode }}</text></view></view>
    </template>
  • 确保在CSS中为.iconfont类设置合适的字体家族,通常在iconfont.css中已经定义好,如:

    .iconfont {font-family: "iconfont" !important;/* 可以添加其他样式如颜色、大小等 */
    }
使用类名
  • 如果iconfont.css中为每个图标定义了特定的类名(如.icon-name:before),则可以直接在Vue模板中使用这些类名:

    <template><view><i class="iconfont icon-name"></i></view>
    </template>

注意事项

  • 确保引入的样式文件路径正确,如果使用绝对路径(如~@/static/...),确保构建工具能够正确解析。

  • 如果项目中同时使用多种字体图标,需注意图标库间的样式隔离,避免相互影响。

  • 对于小程序端,由于其限制,可能需要额外配置或使用特定的插件来支持Iconfont字体图标。

通过上述步骤,您可以在uni-app项目中顺利地使用从Iconfont获取的图标。

根据实际项目需求和Iconfont提供的CSS样式,选择合适的使用方式(Unicode编码或类名)将图标融入到您的界面设计中。

uni-app 如何使用iconfont中的多色图标?

在uni-app中使用Iconfont中的多色图标,需要遵循不同的引入和使用流程,因为多色图标通常不是通过传统的Web字体(TTF、WOFF等)实现,而是利用SVG Sprite技术。以下是具体步骤:

步骤一:获取多色图标资源

  1. 访问阿里巴巴Iconfont网站,确保已登录账号。

  2. 选择或搜索所需的多色图标,将其添加至项目或购物车。

  3. 进入“我的项目”,找到包含多色图标的项目,点击“下载”按钮,选择“Symbol引用”或“SVG Sprite”格式下载。下载得到的文件通常包括:

    • symbol/iconfont.svg:SVG Symbol Sprite文件。

    • symbol/iconfont.js:用于动态加载SVG Sprite的JavaScript文件(可选,视项目需求而定)。

    • demo_index.html:示例文件,展示如何在HTML中使用这些多色图标。

步骤二:整合多色图标资源到uni-app项目

  1. 将SVG Sprite文件放入项目

    • iconfont.svg文件放入uni-app项目的static目录下,例如创建一个子目录svg存放它。

  2. (可选)引入动态加载脚本

    • 如果下载包中包含了iconfont.js,将其放入项目合适的位置(如static/js目录),并在需要使用多色图标的页面的index.html或全局模板中通过<script>标签引入。例如:

      <script src="/static/js/iconfont.js"></script>

步骤三:在Vue页面或组件中使用多色图标

直接引用SVG Symbol
  •  在Vue模板中,使用<svg>标签结合use元素来引用SVG Sprite中的多色图标:

    <template><view><svg><use xlink:href="#图标ID"></use></svg></view>
    </template>
  • 其中,“图标ID”是SVG Symbol中的唯一标识符,可以通过查看iconfont.svg文件或示例demo_index.html来获取。

(可选)使用动态加载脚本
  • 如果引入了iconfont.js,按照其文档或示例中的用法,在Vue组件中调用相应的函数来加载和插入多色图标。通常会提供类似Iconfont.init()的方法,使用时可能需要传入SVG Sprite的URL或其他配置项。

注意事项

  • 多色图标依赖于浏览器对SVG和SVG Sprite的支持,大多数现代浏览器都支持这些特性。

  • 在uni-app的小程序端,需要确保目标平台(如微信小程序、支付宝小程序等)支持SVG的使用。部分平台可能需要额外配置或使用插件来支持SVG。

  • 如果使用直接引用SVG Symbol的方式,确保xlink:href属性中的URL相对于页面的根路径正确。如果图标加载不成功,检查路径是否正确以及服务器是否正确返回SVG文件。

通过以上步骤,您可以在uni-app项目中成功地使用从Iconfont获取的多色图标。

根据项目需求和平台兼容性,选择合适的引入和使用方式(直接引用SVG Symbol或使用动态加载脚本)来展示多色图标。

uni-app 中如何使用uni-icons引用iconfont图标

uni-icons 图标组件名:uni-icons(已支持 uni-app x) 

基本用法

<uni-icons type="contact" size="30"></uni-icons>

Icons Props

属性名类型默认值说明
sizeNumber24图标大小
typeString-图标图案,参考示例
colorString-图标颜色
customPrefix[即将废弃]String-自定义图标
fontFamilyString-自定义图标 2.0.0+支持

通过 fontFamily 自定义图标

  • 引入字体图标

  • 页面 style 中定义 font-family 属性,并正确引入字体

@font-face {font-family: CustomFont;src: url('./iconfont.ttf');
}
  • 组件声明 fontFamily 属性,值为 步骤2 的 font-family ,此时组件的 type 属性将不生效

  • 组件内需要使用字体的 unicode 码作为图标显示内容

<uni-icons fontFamily="CustomFont" :size="26">{{'\uebc6'}}</uni-icons>
  • 方便使用扩展,推荐将 unicode 与显示内容做一个map映射

<template>
<view class="icon-content"><view v-for="(item,index) in customIcons" :key="index"><uni-icons fontFamily="CustomFont" >{{item.unicode}}</uni-icons><text>{{item.name}}</text></view>
</view>
</template>
<script>
export default {data() {return {icons: [],customIcons: [{name: "home",unicode: "\ue601",},{name: "my",unicode: "\ue6ba",},{name: "back",unicode: "\ue634",}]}},created() {},
}
</script>
<style>
@font-face {font-family: CustomFont;src: url('./iconfont.ttf');
}
</style>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/817817.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Ubuntu 23.10.1 nginx源码安装

注&#xff1a;以下所有命令均在root管理员模式下&#xff0c;若不是&#xff0c;请在所有命令前加sudo 1、安装依赖库 1.1、安装gcc g的依赖库 apt-get install build-essential apt-get install libtool1.2、安装pcre依赖库 apt-get update apt-get install libpcre3 lib…

【opencv】示例-ffilldemo 使用floodFill()函数进行区域泛洪填充

image mask mask #include "opencv2/imgproc.hpp" // 包含OpenCV图像处理头文件 #include "opencv2/imgcodecs.hpp" // 包含OpenCV图像编码头文件 #include "opencv2/videoio.hpp" // 包含OpenCV视频IO头文件 #include "opencv2/highgui.hp…

【分享】3种方法取消Word文档的“打开密码”

我们知道&#xff0c;Word文档可以设置“打开密码”&#xff0c;防止文档被随意打开&#xff0c;那后续不需要密码保护了&#xff0c;要怎么取消呢&#xff1f;不小心把密码忘记了还可以取消吗&#xff1f;不清楚的小伙伴一起来看看吧&#xff01; 如果是Word文档不再需要密码…

Open3D(C++) 0~1归一化到0~255

目录 一、算法原理二、代码实现三、结果展示四、参考链接本文由CSDN点云侠原创,原文链接。如果你不是在点云侠的博客中看到该文章,那么此处便是不要脸的爬虫与GPT。 一、算法原理 0-1归一化到0~255的计算原理如下: g ′ = 255 ∗

冯喜运:4.15汇市观潮:现货黄金美原油技术分析

【 黄金消息面分析】&#xff1a;周一(4月15日)亚市盘初&#xff0c;金价开盘跳涨13美元&#xff0c;报2357.71美元/盎司&#xff0c;随后延续涨势&#xff0c;最高触及2372.45美元/盎司&#xff0c;目前金价回落至2354.19美元/盎司&#xff0c;如果中东局势未进一步恶化&#…

通过注解实现接口入参检查

valid 通过注解实现接口入参检查 前言一、引入依赖二、使用步骤1.创建入参对象 request2.提供一个接口 controller3.全局异常捕获 GlobalExceptionHandler4.执行结果 总结 前言 作为一个后端开发&#xff0c;一般是不单独对接口参数的每个入参进行长度、最大值、最小值判断。 …

RN向上向下滑动组件封装(带有渐变色)

这段组件代码逻辑是出事有一个View和下面的块,下面的块也就是红色区域可以按住向上向下滑动,当滑动到屏幕最上面则停止滑动,再向上滑动的过程中,上方的View的背景色也会有个渐变效果,大概逻辑就是这样 代码如下 import React, {useEffect, useRef, useState} from react; impo…

爱自然生命力专项基金:“爱·启航”残障家庭教育援助项目帮扶上万残障家庭

为进一步积极践行社会责任&#xff0c;助力公益慈善事业&#xff0c;2017年2月爱自然生命力体系与中国下一代教育基金会开展相关合作&#xff0c;共同启动了中国下一代教育基金会爱自然生命力专项基金&#xff0c;并启动了基金第一个项目“爱启航残障家庭教育援助项目”&#x…

华为昇腾AI芯片加持,9.1k Star 的 Open-Sora-Plan,国产Sora要来了吗

Aitrainee | 公众号&#xff1a;AI进修生 哇&#xff0c;今天Github趋势榜第一啊&#xff0c;为了重现Sora&#xff0c;北大这个Open-Sora-Plan&#xff0c;希望通过开源社区力量的复现Sora&#xff0c;目前已支持国产AI芯片(华为昇腾&#xff09;&#xff0c;这回不用被卡脖子…

(学习日记)2024.04.17:UCOSIII第四十五节:中断管理

写在前面&#xff1a; 由于时间的不足与学习的碎片化&#xff0c;写博客变得有些奢侈。 但是对于记录学习&#xff08;忘了以后能快速复习&#xff09;的渴望一天天变得强烈。 既然如此 不如以天为单位&#xff0c;以时间为顺序&#xff0c;仅仅将博客当做一个知识学习的目录&a…

An Investigation of Geographic Mapping Techniques for Internet Hosts(2001年)第二部分

​下载地址:An investigation of geographic mapping techniques for internet hosts | Proceedings of the 2001 conference on Applications, technologies, architectures, and protocols for computer communications 被引次数:766 Padmanabhan V N, Subramanian L. An i…

【原创】springboot+mysql宠物管理系统设计与实现

个人主页&#xff1a;程序猿小小杨 个人简介&#xff1a;从事开发多年&#xff0c;Java、Php、Python、前端开发均有涉猎 博客内容&#xff1a;Java项目实战、项目演示、技术分享 文末有作者名片&#xff0c;希望和大家一起共同进步&#xff0c;你只管努力&#xff0c;剩下的交…

用html写一个雨的特效

<!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>雨特效</title><link rel"stylesheet" href"./style.css"> </head> <body> <div id"wrap-textu…

VLAN配置不求人:华为设备配置详解

实验拓扑 实验需求 1.全网有VLAN10&#xff0c;VLAN20&#xff0c;VLAN30 2.VLAN10/20/30,192.168.10/20/30.0 3.配置Trunk, Access,Trunk封装使用Dot1q 4.Trunk的模式使用收到形成mode on 5.所有vlan的网关在router 6.单臂路由来实现所有的通讯 7.VLAN30是所有网络设备…

AskManyAI:一个GPT、Claude、Gemini、Kimi等顶级AI的决斗场

一直以来很多人问我能不能有个稳定&#xff0c;不折腾的全球AI大模型测试网站&#xff0c;既能够保证真实靠谱&#xff0c;又能够保证稳定、快速&#xff0c;不要老动不动就挂了、出错或者漫长的响应。 直到笔者遇到了AskManyAI&#xff0c;直接就惊艳住了&#xff01; 话不多…

主播美颜SDK:实现精细化美颜功能的关键技术分析

主播美颜SDK作为实现精细化美颜功能的关键技术&#xff0c;其背后蕴含着丰富的算法和工程技术。本文将对主播美颜SDK的关键技术进行深入分析&#xff0c;探讨其实现精细化美颜功能的原理与方法。 图像识别与面部分析 通过图像识别技术&#xff0c;SDK能够准确地识别出人脸位置…

学习笔记------约束的管理

此篇记录FPGA的静态时序分析&#xff0c;在学习FPGA的过程中&#xff0c;越发觉得对于时序约束只是懂了个皮毛。现在记录一下自己的学习过程。 本文摘自《VIVADO从此开始》高亚军 为什么要进行约束&#xff1f;约束的目的是什么&#xff1f; 简单来说&#xff0c;就是需要在…

HIT The Wiorld,HIT世界官网地址+配置要求+测试时间+加速器分享

HIT The Wiorld&#xff0c;HIT世界官网地址配置要求测试时间加速器分享 NEXON新游《HIT&#xff1a;世界&#xff08;HIT&#xff1a;The World&#xff09;》将在4月17日上线&#xff0c;目前已在官网开启事前预约预创建角色。Hit :the world&#xff08;HIT:世界&#xff…

拥抱信创新篇章,行云绽放麒麟软件携手认证

近年来&#xff0c;我国积极推进信创国产化&#xff0c;各产业也纷纷加速推进软件和芯片的本土化&#xff0c;将“自主可控”列为关键战略目标。在这样的背景下&#xff0c;行云绽放与麒麟软件携手共进&#xff0c;积极拥抱信创&#xff0c;完成了重要的认证工作&#xff0c;为…

拯救鲨鱼!Helping wireshark!wireshark未响应解决方法

前言 做题的的时候 在用wireshark解密tls秘钥的时候 我的小鲨鱼突然未响应了 然后我多次尝试无果 并且殃及池鱼 我电脑上所有的流量包都打不开了&#xff1f;&#xff01;&#xff01;&#xff01; 于是乎 尝试删了重下 还是未响应 开始怀疑电脑 重启电脑两次 还是打…