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)
相关推荐
嘟嘟07173 分钟前
从手写 HashRouter 到 React Router:逐层拆解 SPA 前端路由的完整实现
前端·javascript
我叫蒙奇38 分钟前
JS中的隐式类型转换
前端
他们叫我秃子40 分钟前
前端开发转 Go 全栈(四):代码写在前面,却要最后执行?我终于搞懂了 defer
前端·后端·go
生戎马 平安京策1 小时前
只学一点点:我的技术学习策略
前端·javascript·react.js
大鹏说大话1 小时前
HTML5 地理定位 Geolocation:获取用户位置的“红线”与最佳实践
前端·html·html5
Csvn2 小时前
content-visibility: auto —— 让浏览器跳过离屏渲染的性能黑科技
前端
小鹰信息技术服务部2 小时前
Edge安装包MicrosoftEdgeSetup.exe无法运行,点击没反应
前端·edge
webkubor2 小时前
一次前端生产白屏复盘:旧 HTML、Hash 资源和 MIME type text/html
前端·前端工程化
咩咩啃树皮3 小时前
第63篇【终极整合巨作】从零手写原生中后台管理系统|整合62篇全部前端知识点|从头到尾完整架构+全功能逻辑
前端·架构
Highcharts4 小时前
用Highcharts如何动态向一个序列添加点-示列讲解
前端