vue.js - 如何使用 dom-to-image 库在服务器 vuejs 中发送图像?
问题描述
我正在使用“dom to image library”而不是 html2canvas 来获取页面的屏幕商店,但是当我想将转换图像发送到服务器时我被卡住了。我会很感激你的时间。这是我整个星期都在尝试的方法。
//template
<div id="my-node"><h1 style="background-color:blue;padding:4px;">Welcome to the page</h1></div>
<button v-on:click="saveImage"></button>
saveImage(){
var node = document.getElementById('my-node');
domtoimage.toPng(node)
.then(function (dataUrl) {
var image = new Image();
image.src = dataUrl;//From here I want to send this image to server
//document.body.appendChild(image);
})
//axio
new data = new form();
data.append('image')
axio.post('posts','data')
}
解决方案
您应该从图像中创建一个 blob,然后设置 FormData:
saveImage(){
let data = new FormData();
domtoimage.toBlob(document.getElementById('my-node'))
.then(function (blob) {
data.append('data', blob);
axios.post(`<Someurl>`, data, {
headers: {
'Content-Type': 'multipart/form-data',
},
})
.then(res => {
console.log(res)
})
})
}
推荐阅读
- ios - sectionIndexTitles 不工作
- c# - 将根对象添加到 NJsonSchema 模式生成器
- python - 带假人的条形图
- chisel - 未找到黑盒异常
- kubernetes - 如何将 Kubernetes 机密指向 Configmap
- javascript - 使用 es6 为具有相同 id 的项目重新组织数组
- powershell - Install-PackageProvider 找不到 NuGet 提供程序
- javascript - 如何用新的替换 json 对象的属性
- python - 在一张图表上绘制两个图后,没有发现带有标签的句柄出现图例错误
- batch-file - 递归 Del 命令不会删除所有匹配的通配符 glob