canvas画图借用html2canvas插件
画好后,用JSZip打包下载
先构建数组用于批量下载
// 批量下载海报开始代码
// this.piliangQRCodeList 是某个方法中获取的,我做的时候,来自与element-ui的el-select组件的多选属性得到的数组
// this.codeList 从接口获取的数据,格式为Array
let doms = [] //自定义数组
for (let i = 0; i < this.piliangQRCodeList.length; i++) {
for (let j = 0; j < this.codeList.length; j++) {
if (this.piliangQRCodeList[i] == this.codeList[j].name) { // 遍历获取你想要的数据,全部push到自定义的数组中
doms.push({
name: this.codeList[j].name,
class: '.moban',
url: this.codeList[j].url
})
}
}
}
// 以上步骤做完,我们就获取到了带有数据的doms数组了,接下来把这个数组传入画canvas的方法中
this.drawCanvas(doms) // this是vue的全局对象
// 下面的this.drawCanvas(doms)方法
// 绘制canvas 因为是异步的所有用async修饰了
async drawCanvas(arr) {