Угловой считыватель файлов возвращает значение, но не сохраняется в объекте - PullRequest
0 голосов
/ 30 октября 2018

Самое странное происходит. Когда я пытаюсь преобразовать файл и сохранить его как base 64, он не работает и не выдает никакой ошибки. Значение заканчивается тем, что он никогда не назначается для entry.imageData, но когда я отлаживаю его, я вижу назначаемое значение, и console.log регистрирует это значение. Я посмотрел в Интернете, но не смог найти решение. Другими словами, у меня есть console.log для записи значения entry.imageData сразу после его изменения, но когда я создаю запись и прикрепляю изображение, значение entry.imageData устанавливается '', тогда как когда я отлаживаю его и следуйте инструкциям, все, кажется, работает нормально, и консоль записывает значение, и значение присваивается entry.imageData.

Код для преобразования файла в строку

 getBase64(file) {
const reader = new FileReader();
reader.readAsDataURL(file);
reader.onload = function () {
  return reader.result.toString();
};
reader.onerror = function (error) {
  console.log('Error: ', error);
};
return reader.result.toString();
}

как я вызываю метод и пытаюсь сохранить его в объект, который я создал

const entry = new Entry();
entry.imageData = this.getBase64(files);

Модель входа:

export class Entry {
id: string;
type: string;
createdBy: string;
description: string;
createdDate: Date;
status: string;
imageData: String;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...