html2canvas 在ios13.4.1系统中不生效

一、问题描述
最近在开发 html2canvas 的时候,突然发现,html2canvas在IOS13.4.1系统中调用失败。后马上去github上查看是否有同道中人遇到类似问题。

在这里插入图片描述

二、解决方案
1.首先将 package.json 中的 html2canvas 版本降低为【1.0.0-rc.4】

版本降低方法
首先移除 html2canvas 【npm uninstall html2canvas
然后安装指定版本 【npm install --save html2canvas@1.0.0-rc.4

"dependencies": {
    "html2canvas": "^1.0.0-rc.4",
    "less": "^3.11.1",
    "less-loader": "^4.1.0",
    "vue": "^2.5.2",
    "vue-router": "^3.0.1"
  },
2.如果上述无法解决你的问题 再进行第2步
/**
* 生成分享图片
 */
toHtmlCanvasShareFn() {
	// 修改前代码
	html2canvas(this.$refs.htmlCanvas, {
		backgroundColor: null
	}).then((canvas) => {
		let dataURL = canvas.toDataURL("image/png");
		this.shareImgUrl = dataURL;
		console.log(this.dataURL)
	});

	// 修改后代码 主要将 html2canvas 修改为 (window.html2canvas || html2canvas)
	(window.html2canvas || html2canvas)(this.$refs.htmlCanvas, {
		backgroundColor: null
	}).then((canvas) => {
		let dataURL = canvas.toDataURL("image/png");
		this.shareImgUrl = dataURL;
		console.log(this.dataURL)
	});
}

参考链接:https://github.com/niklasvh/html2canvas/issues/2229

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐