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

vue3中把封装svg图标为全局组件

在vue3中我们使用svg图标是下面这样子的

    <svg style="width:30px;height:30px;"><use xlink:href="#icon-phone" fill="red"></use></svg>

第次使用图标都要写这么多重复的代码,很不方便,所以,如果我们把它封装成全局的组件, 就可以很方便的使用了
首先我们要看 svg 图标使用时 变化的部分有哪几个

在这里插入图片描述
所以我们新建一个组件 SvgIcon

在这里插入图片描述

SvgIcon.vue 的代码如下

<script setup lang="ts" name="SvgIcon">let props = defineProps({iconname: {type: String,default: '',},width: {type: [Number,String],default: 16,},height: {type: [Number,String],default: 16,},color:{type:String,default:'#666'}})
</script><template><div class="wrapper"><svg :style="{width:width+'px',height:height+'px'}"><use :xlink:href="`#icon-${iconname}`" :fill="color"/></svg></div>
</template><style scoped></style>

在页面中调用就可以了
在这里插入图片描述


以上是在单组件中调用, 每次使用 都要引入才可以使用,我们现在把它设置成全局组件,就不需要 每个调用的地方都要 import SvgIcon from “@/components/SvgIcon.vue”;

我们只需要在 main.ts中注册自定义的组件为全局组件就可以了

在这里插入图片描述

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 解决SVN蓝色问号的问题
  • Android开发高频面试题之——kotlin篇
  • 网络层协议 —— IP协议
  • MyBatis 源码解析:TypeHandler 设计与自定义实现
  • 《深度学习》卷积神经网络CNN 原理及其流程解析
  • Ubuntu 22.04.5 LTS 发布下载 - 现代化的企业与开源 Linux
  • 如何在Linux Centos7系统中挂载群晖共享文件夹
  • Kalman算法、扩展卡尔曼滤波(EKF)和无迹卡尔曼滤波(UKF)的比较
  • RuntimeError: Maximum Recursion Depth Exceeded - 递归深度超限的完美解决方案
  • 二叉树堆的建立与排序
  • linux之mysql安装
  • 整数二分算法和浮点数二分算法
  • SpringBootWeb增删改查入门案例
  • ROS 设置dhcp option 6 多个地址格式
  • Qt构建JSON及解析JSON
  • 10个确保微服务与容器安全的最佳实践
  • 8年软件测试工程师感悟——写给还在迷茫中的朋友
  • CSS盒模型深入
  • Gradle 5.0 正式版发布
  • JavaScript设计模式系列一:工厂模式
  • Mysql数据库的条件查询语句
  • Python语法速览与机器学习开发环境搭建
  • Spring Cloud中负载均衡器概览
  • storm drpc实例
  • 从tcpdump抓包看TCP/IP协议
  • 分布式熔断降级平台aegis
  • 排序算法之--选择排序
  • 限制Java线程池运行线程以及等待线程数量的策略
  • 用 vue 组件自定义 v-model, 实现一个 Tab 组件。
  • 再谈express与koa的对比
  • 曜石科技宣布获得千万级天使轮投资,全方面布局电竞产业链 ...
  • ​​​​​​​​​​​​​​Γ函数
  • ‌JavaScript 数据类型转换
  • #Linux(权限管理)
  • #stm32驱动外设模块总结w5500模块
  • #图像处理
  • ( )的作用是将计算机中的信息传送给用户,计算机应用基础 吉大15春学期《计算机应用基础》在线作业二及答案...
  • (33)STM32——485实验笔记
  • (4)STL算法之比较
  • (k8s)kubernetes 部署Promehteus学习之路
  • (zt)基于Facebook和Flash平台的应用架构解析
  • (附源码)c#+winform实现远程开机(广域网可用)
  • (函数)颠倒字符串顺序(C语言)
  • (紀錄)[ASP.NET MVC][jQuery]-2 純手工打造屬於自己的 jQuery GridView (含完整程式碼下載)...
  • (三)centos7案例实战—vmware虚拟机硬盘挂载与卸载
  • (数据结构)顺序表的定义
  • (限时免费)震惊!流落人间的haproxy宝典被找到了!一切玄妙尽在此处!
  • (学习日记)2024.01.19
  • (一) storm的集群安装与配置
  • (转)详解PHP处理密码的几种方式
  • .gitignore文件_Git:.gitignore
  • .NET Framework与.NET Framework SDK有什么不同?
  • .NET 给NuGet包添加Readme
  • .net 流——流的类型体系简单介绍
  • .NET/C# 使用反射注册事件