vislite
Version:
灵活、快速、简单的数据可视化交互式跨端前端库
36 lines (33 loc) • 1.15 kB
JavaScript
export default function (_this, drawImage, canvas) {
return function (imgUrl, x, y, w, h) {
return new Promise((resolve) => {
let doit = (imgsrc) => {
if (canvas.createImage) {
let img = canvas.createImage();
img.onload = function () {
drawImage.call(_this, img, x, y, w, h, true).then(() => {
resolve({});
});
};
img.src = imgsrc;
}
// 低版本兼容
else {
drawImage.call(_this, imgsrc, x, y, w, h, true).then(() => {
resolve({});
});
}
};
if (/^http/.test(imgUrl)) {
wx.downloadFile({
url: imgUrl,
success: function (res) {
doit(res.tempFilePath);
},
})
} else {
doit(imgUrl);
}
});
};
};