Files
lingxiao865 c5af079d8c first commit
2026-02-10 08:05:03 +08:00

54 lines
1.2 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

export async function loadImage({
canvas,
src,
}) {
let result = null;
if (!src || !canvas) {
return result;
}
// #ifdef MP
// 小程序环境:使用 canvas.createImage
if (canvas.createImage) {
result = new Promise((resolve, reject) => {
const img = canvas.createImage();
// 必须先设置 onload 和 onerror再设置 src
img.onload = () => resolve(img);
img.onerror = (err) => {
console.error('创建图片对象失败:', err);
reject(err);
};
img.src = src;
});
}
// #endif
// #ifdef APP-PLUS
result = new Promise((resolve) => {
uni.getImageInfo({
src,
success: (res) => {
const imgPath = res.path; // 本地临时路径
resolve(imgPath);
},
});
});
// #endif
// #ifdef H5
// H5 环境:创建 Image 对象(参考 TSX 实现)
result = new Promise((resolve, reject) => {
const img = new Image();
img.crossOrigin = 'anonymous';
img.onload = () => resolve(img);
img.onerror = (err) => {
console.error('图标加载失败:', err);
reject(err);
};
img.src = src;
});
// #endif
return result;
}