我正在修复现有代码,以便在上传之前检查图片最小尺寸。由于新的Image(),我现在正在获得适当大小的图像,但我无法返回结果!这是代码:
_hasError: function (file) {
if (file.error) {
return file.error;
}
if (this.options.minWidth > 0 && this.options.minHeight > 0) {
var checkSizeUpload = function(minWidth, minHeight) {
if (this.width < minWidth || this.height < minHeight) {
return "Image too small";
}
};
var tmpImg = new Image();
tmpImg.src = URL.createObjectURL(file);
tmpImg.onload = checkSizeUpload.bind(tmpImg, this.options.minWidth, this.options.minHeight);
}
...
return null;
}
如您所见,该方法旨在返回null或错误消息。 麻烦的是,因为onload回调是异步的,所以当我知道图像的实际大小后,我找不到返回错误消息的方法。
从我看到的情况来看,我可能不得不添加另一个回调,但我看不出这会有什么帮助,因为如果我从它返回,它将不会返回所需的范围。
我该如何解决这个问题?谢谢你的帮助!