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)
相关推荐
Dignity_呱12 分钟前
聊聊小程序的双线程架构
前端·微信小程序·架构
去伪存真29 分钟前
下载体验了一下OpenAI号称手机也能运行起来的开源大模型gpt-oss-20b
前端·chatgpt
Shun_Tianyou1 小时前
Python Day28 HTML 与 CSS 核心知识点 及例题分析
开发语言·前端·css·python·算法·html
掘金安东尼1 小时前
当第三方 API 失效时,如何保留文章演示示例
前端·javascript·面试
掘金安东尼1 小时前
浏览器开发者工具调试器高级技巧
前端·javascript
16年上任的CTO1 小时前
微前端架构:原理、场景与实践案例
前端·架构·微前端·qiankun
Jimmy1 小时前
React 性能优化:从慢到闪电般快
前端·javascript·react.js
skywalk81631 小时前
vagrant和itamae怎么配合使用? (放弃)
运维·前端·ruby·vagrant
江城开朗的豌豆1 小时前
React Hooks 真香定律:告别Class组件,我为什么回不去了?
前端·javascript·react.js
( ̄▽ ̄).1 小时前
C++联合体的定义
前端·c++·算法