Я пытаюсь выполнить проверку, когда загруженное изображение не может иметь ширину или высоту более 1024 пикселей.Это то, что я сделал, но по какой-то причине он не работает каждый раз:
readThumbUrl(event: any) {
this.thumbnailFile = [];
const eventObj: MSInputMethodContext = <MSInputMethodContext> event;
const target: HTMLInputElement = <HTMLInputElement> eventObj.target;
const files: FileList = target.files;
if (files) {
this.thumbnailFile.push(files[0]);
}
var image;
if (event.target.files && event.target.files[0]) {
let reader = new FileReader();
reader.onload = (event: ProgressEvent) => {
this.thumbUrl = (<FileReader>event.target).result;
// This part is for validation
image = new Image();
image.src = (<FileReader>event.target).result;
// Here, sometimes it takes width 0 and sometimes it takes image width,
// dont know for what reason.
if (image.width > 1024 || image.height > 1024) {
this.dimensionError = true;
}
};
reader.readAsDataURL(event.target.files[0]);
}
this.videoModel.thumbnail = event.target.value;
}
Итак, проверка иногда вызывает, иногда нет, есть ли лучший способ сделать это?