位置: IT常识 - 正文

vue3使用svg图标多种方式(vue引用svg矢量图)

编辑:rootadmin
vue3使用svg图标多种方式

推荐整理分享vue3使用svg图标多种方式(vue引用svg矢量图),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue svga,vue中使用svg图标,vue3 svg,vue-svg-loader,vue中使用svg图标,vue svgicon,vue3 svg,vue3 svg,内容如对您有帮助,希望把文章链接给更多的朋友!

方式1使用在线链接访问 在iconfont找到自己的项目的图标选择Symbol获取在线链接 2:在vue3项目中找到public的index.html进行script进行引入

打开浏览器看:这样就会自动注入到body下

在项目直接使用

//控制图标的大小 <svg style="width: 10px; height: 10px"> <use href="#icon-shanchu"></use> </svg>

显示出了删除的图标

封装的写法(上面的代码写着太重复下面进行封装) 1:新建一个专门获取svg图标的组件 icon.vue (svg/index.vue)

<template> <div> <svg :style="style"> <use :href="names"></use> </svg> </div></template><script setup>import { defineProps, withDefaults } from "vue";const props = defineProps({ name: { type: String, default: "", }, style: { type: Object, default: () => { return { width: 10, height: 10, color: "", }; }, },});const names = `#${props.name}`;</script><style lang="scss" scoped></style>vue3使用svg图标多种方式(vue引用svg矢量图)

需要显示图标的界面

<template> <div class="home"> <icon :style="{ width: 10, height: 10, color: 'red' }" name="icon-shanchu" ></icon> <icon :style="{ width: 10, height: 10, color: 'red' }" name="icon-shanchu" ></icon> </div></template><script setup>import { ref } from "vue";import icon from "../assets/svg/index.vue";</script><style lang="scss"></style>

假如你既引用了iconfont的图标也自定义了图标:直接放在一起根据传输的name指定使用哪一个图标 icon.vue (svg/index.vue)

<template> <div> <svg :style="style"> <use :href="names"></use> </svg> // 自定义的图标 <svg width="0" height="0"> <defs> <symbol id="more" viewBox="0 0 100 100"> <circle r="5" cx="20" cy="25" fill="transparent" stroke="green" ></circle> <circle r="5" cx="20" cy="50" fill="currentColor"></circle> <circle r="5" cx="20" cy="75" fill="currentColor"></circle> <line x1="40" y1="25" x2="90" y2="25" stroke-width="8" stroke="currentColor" ></line> <line x1="40" y1="50" x2="90" y2="50" stroke-width="8" stroke="currentColor" ></line> <line x1="40" y1="75" x2="90" y2="75" stroke-width="8" stroke="currentColor" ></line> </symbol> </defs> </svg> </div></template><script setup>import { defineProps, withDefaults } from "vue";const props = defineProps({ name: { type: String, default: "", }, style: { type: Object, default: () => { return { width: 10, height: 10, color: "", }; }, },});const names = `#${props.name}`;</script><style lang="scss" scoped></style>

使用:

<template> <div class="home"> <icon :style="{ width: 10, height: 10, color: 'red' }" name="icon-shanchu" ></icon> <icon :style="{ width: 10, height: 10, color: 'red' }" name="icon-shanchu1" ></icon> <icon :style="{ width: 20, height: 20, color: 'red' }" name="more"></icon> </div></template><script setup>import { ref } from "vue";import icon from "../assets/svg/index.vue";</script><style lang="scss"></style>

假如你是复制的iconfont官网的图标svg的代码:

你直接cv到项目也可以直接使用:

<svg t="1673881805558" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1076" width="200" height="200" > <path d="M658.276045 767.993958 658.276045 274.295l329.126 0L987.402045 219.44 658.276 219.44l0-18.281c0-80.787046-65.492992-146.284032-146.276045-146.284032-80.790016 0-146.276045 65.496986-146.276045 146.284032l0 18.281L36.597 219.44l0 54.855 109.695 0 0 694.83L877.7 969.125l0-548.55-54.855 0L822.845 914.27l-621.69 0L201.155 274.295l164.569 0 0 493.699 54.848 0L420.572 274.295l182.85 0 0 493.699L658.276 767.994zM420.571034 219.440026l0-18.281c0-50.492006 40.932966-91.420979 91.428966-91.420979 50.489037 0 91.420979 40.928973 91.420979 91.420979l0 18.281L420.571 219.440026z" p-id="1077" ></path> </svg>

效果如下:

我们还可以把上面的代码进行改造直接使用在 icon.vue (svg/index.vue)改造

<template> <div class="home"> <icon :style="{ width: 10, height: 10, color: 'red' }" name="icon-shanchu" ></icon> <icon :style="{ width: 10, height: 10, color: 'red' }" name="icon-shanchu1" ></icon> <icon :style="{ width: 20, height: 20, color: 'red' }" name="more"></icon> <svg t="1673881805558" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1076" width="200" height="200" > <path d="M658.276045 767.993958 658.276045 274.295l329.126 0L987.402045 219.44 658.276 219.44l0-18.281c0-80.787046-65.492992-146.284032-146.276045-146.284032-80.790016 0-146.276045 65.496986-146.276045 146.284032l0 18.281L36.597 219.44l0 54.855 109.695 0 0 694.83L877.7 969.125l0-548.55-54.855 0L822.845 914.27l-621.69 0L201.155 274.295l164.569 0 0 493.699 54.848 0L420.572 274.295l182.85 0 0 493.699L658.276 767.994zM420.571034 219.440026l0-18.281c0-50.492006 40.932966-91.420979 91.428966-91.420979 50.489037 0 91.420979 40.928973 91.420979 91.420979l0 18.281L420.571 219.440026z" p-id="1077" ></path> </svg> //改造好了直接使用 <icon :style="{ width: 20, height: 20, color: 'red' }" name="icon"></icon> </div></template><script setup>import { ref } from "vue";import icon from "../assets/svg/index.vue";</script><style lang="scss"></style>

本文链接地址:https://www.jiuchutong.com/zhishi/293156.html 转载请保留说明!

上一篇:Vue实现生成二维码(vue生成二维码分享)

下一篇:【swinUnet官方代码测试自己的数据集(已训练完毕)】

  • 如何让自己的微博每天增加1000粉丝(如何让自己的微信从对方微信中消失)

    如何让自己的微博每天增加1000粉丝(如何让自己的微信从对方微信中消失)

  • 华为b2手环怎么连接手机(华为b2手环怎么连接oppo手机)

    华为b2手环怎么连接手机(华为b2手环怎么连接oppo手机)

  • 惠普510打印机怎么连接wifi(惠普510打印机怎样清洗喷头)

    惠普510打印机怎么连接wifi(惠普510打印机怎样清洗喷头)

  • 华为畅享9plus电池耐用吗(华为畅享9plus电池多少钱一块)

    华为畅享9plus电池耐用吗(华为畅享9plus电池多少钱一块)

  • 速通卡etc蓝牙连不上(速通卡etc蓝牙连接不上)

    速通卡etc蓝牙连不上(速通卡etc蓝牙连接不上)

  • 苹果13.4.1加了什么功能(苹果升级13.4)

    苹果13.4.1加了什么功能(苹果升级13.4)

  • 直播平台给主播限流的原因(直播平台给主播发工资交税了吗)

    直播平台给主播限流的原因(直播平台给主播发工资交税了吗)

  • 手机qq备注查看器(qq备注怎么查看)

    手机qq备注查看器(qq备注怎么查看)

  • 为什么芒果TV没有弹幕了(为什么芒果tv没有弹幕)

    为什么芒果TV没有弹幕了(为什么芒果tv没有弹幕)

  • vivo快充突然没了(vivo手机快充失效)

    vivo快充突然没了(vivo手机快充失效)

  • iphonese2可以无线充电吗(iphonese支持无线)

    iphonese2可以无线充电吗(iphonese支持无线)

  • mpp文件手机怎么打开(手机上怎么看mpp文件)

    mpp文件手机怎么打开(手机上怎么看mpp文件)

  • 苹果手机如何模拟门禁卡(苹果手机如何模拟安卓系统)

    苹果手机如何模拟门禁卡(苹果手机如何模拟安卓系统)

  • 微信运动从几点开始新的一天算步(微信运动在哪里打开)

    微信运动从几点开始新的一天算步(微信运动在哪里打开)

  • 得物上买东西多久能到(得物买东西多久自动确认收货)

    得物上买东西多久能到(得物买东西多久自动确认收货)

  • 拨打的电话暂停服务是什么意思(拨打的电话暂停服务是怎么回事?)

    拨打的电话暂停服务是什么意思(拨打的电话暂停服务是怎么回事?)

  • 银河奇异果能看央视直播吗(银河奇异果能看世界杯吗)

    银河奇异果能看央视直播吗(银河奇异果能看世界杯吗)

  • intel core 2 duo是什么处理器

    intel core 2 duo是什么处理器

  • 华为怎么设置屏保图片(华为怎么设置屏保)

    华为怎么设置屏保图片(华为怎么设置屏保)

  • 陌陌关注多久可以语音聊天(陌陌关注多久可以发视频)

    陌陌关注多久可以语音聊天(陌陌关注多久可以发视频)

  • 戴尔笔记本怎么添加控制面板(戴尔笔记本怎么设置u盘启动)

    戴尔笔记本怎么添加控制面板(戴尔笔记本怎么设置u盘启动)

  • 电脑需要过地铁安检吗(电脑进地铁站需要安检吗)

    电脑需要过地铁安检吗(电脑进地铁站需要安检吗)

  • 苹果手机怎么设置手写(苹果手机怎么设置铃声来电铃声)

    苹果手机怎么设置手写(苹果手机怎么设置铃声来电铃声)

  • 一加是oppo的子品牌吗(一加是oppo子品牌)

    一加是oppo的子品牌吗(一加是oppo子品牌)

  • 微视如何点赞(微视点赞在哪里看)

    微视如何点赞(微视点赞在哪里看)

  • 怎样给excel加密(怎样给excel加密设置密码保存)

    怎样给excel加密(怎样给excel加密设置密码保存)

  • 中国电信的通信网络
  • 广告赞助支出可以抵税吗
  • 出差补贴没有发票怎么做账
  • 个人所得税定额扣除怎样理解
  • 待认证进项税期末余额在贷方
  • 固定资产装修费用计入房产税吗
  • 高新企业收到政府补贴会计分录
  • 企业所得税债务重组所得
  • 贷款利息收入要减去支付利息支出吗
  • 企业所得税调增项目有哪些
  • 企业筹建期间需要招几个会计
  • 民间非营利组织会计科目
  • 本期有进项没有销项需要转出增值税吗?
  • 企业如何申请定增资金
  • 药用植物所
  • 公司员工出差补贴与差旅费报销制度
  • 期末未缴税额为正是什么意思
  • 海关新增成交方式exw条款,如何退税?
  • 资产增加,负债增加
  • 出售子公司全部股权的股权账务处理
  • 个体工商户开9%的税需要什么
  • 别的公司代缴社保合法
  • 华为鸿蒙系统如何刷机
  • 期末留抵税额的减值
  • linux查看文件的权限
  • win10安装版u盘安装
  • php技术基础知识
  • 汇算清缴时业务招待费税收金额为零是什么原因
  • 场租费发票如何开
  • PHP:Memcached::add()的用法_Memcached类
  • php数组函数有哪些
  • 应税销售额含增值税吗
  • 建筑企业预缴企业所得税怎么计算
  • 注销报税是什么意思
  • 作为大学生你能为国家安全贡献哪些力量论文
  • 看了这篇文章感触很深的说说
  • php中split
  • php高级程序招聘
  • blat命令
  • 购入固定资产应该怎么做账
  • 打车费计入哪个科目
  • access如何设置宏的功能
  • db2 insert timestamp
  • 新政府会计制度从什么时候开始实施
  • 预收账款和应收账款可以合并吗
  • 小规模未开票收入超过30万如何申报
  • 应收账款余额要包含应收票据吗
  • 资本公积转为实收资本会计科目
  • 农产品成本包含所消耗的物资费用
  • 政府预算年度
  • 企业注销股东投资款怎么处理
  • 非关联企业之间可以借款吗
  • 港口建设费征收管理办法
  • b-树和b+树都能有效地支持随机检索
  • docker1.12.6
  • win8任务管理器快捷键
  • win10笔记本不显示桌面
  • mac上safari
  • scrfs.exe - scrfs是什么进程 有什么用
  • xp系统提升性能
  • centos安装软件教程
  • mssearch.exe - mssearch是什么进程 有什么用
  • win8.1开机音乐
  • node.js基础入门
  • 批处理 dir
  • css图片标签
  • Begin OpenGL with Python-1st Day,draw a simple sample.
  • awk 查找
  • vue2.x
  • express框架的优缺点
  • unity data
  • math在java
  • pythonipo模型
  • android 入门教程
  • js模拟点击事件onclick
  • 有哪些推荐阅读的书
  • 个体经营所得申报密码怎样设置
  • 房地产的土地增值税计入哪个科目
  • 湖南省水利建设基金
  • 外贸公司销售额可以10亿以上吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设