Vite项目中SVG同步转换成Image对象

技术要点

  1. 使用XMLHttpRequest同步加载SVG内容;
  2. 结合Vite的静态资源处理能力

方法实现

使用XMLHttpRequest同步加载SVG内容;

js 复制代码
export function createImageFromSvgString(rawSvg: string) {
  const blob = new Blob([rawSvg], { type: "image/svg+xml" });
  const url = URL.createObjectURL(blob);
  const img = new Image();
  img.src = url;
  return img;
}

结合Vite的静态资源处理能力

js 复制代码
import rawSvg from '@/assets/svg/test.svg?raw';

案例

js 复制代码
import rawSvg from '@/assets/svg/test.svg?raw';

const image = createImageFromSvgString(rawSvg)
相关推荐
weixin199701080163 小时前
【性能提升300%】仿1688首页的Webpack优化全记录
前端·webpack·node.js
冰暮流星3 小时前
javascript之数组
java·前端·javascript
晚霞的不甘3 小时前
Flutter for OpenHarmony天气卡片应用:用枚举与动画打造沉浸式多城市天气浏览体验
前端·flutter·云原生·前端框架
xkxnq4 小时前
第五阶段:Vue3核心深度深挖(第74天)(Vue3计算属性进阶)
前端·javascript·vue.js
三小河4 小时前
Agent Skill与Rules的区别——以Cursor为例
前端·javascript·后端
Hilaku4 小时前
不要在简历上写精通 Vue3?来自面试官的真实劝退
前端·javascript·vue.js
三小河4 小时前
前端视角详解 Agent Skill
前端·javascript·后端
Aniugel4 小时前
单点登录(SSO)系统
前端
鹏多多4 小时前
移动端H5项目,还需要react-fastclick解决300ms点击延迟吗?
前端·javascript·react.js
serioyaoyao4 小时前
上万级文件一起可视化,怎么办?答案是基于 ParaView 的远程可视化
前端