У меня есть CKEditor 4.14.1 с подключаемым модулем «Загрузить изображение», настроенным для отправки загруженных изображений в мою внутреннюю службу изображений. В событии fileUploadResponse
я запускаю этот обработчик событий, чтобы настроить URL-адрес загруженного изображения:
event.stop();
let response = JSON.parse(event.data.fileLoader.xhr.responseText);
event.data.url = `https://${apiLocation}/attachmentservice/attachment/${response.id}/content`;
event.data.fileName = response.sourceFileName;
Изображение загружается нормально, однако событие change
срабатывает сразу при вставке с возвратом event.editor.getData()
пустая строка, в которой должен располагаться тег изображения. Затем мой обработчик событий fileUploadResponse
запускается и успешно изменяет URL-адрес, но событие change
никогда не запускается с тегом изображения в данных редактора. Если я затем добавлю в редактор пробел / любой символ, событие сработает, и редактор будет иметь в нем правильный тег изображения с URL-адресом, который я предоставил в моем обработчике событий.
Если я загружаю изображение с изображением2 плагин, он использует тот же обработчик событий, что и выше, и запускает change
после, где event.editor.getData()
имеет тег изображения в правильном месте. Нужно ли мне настраивать обработчик событий по-другому для плагина Upload Image или запускать определенную функцию редактора для editor.getData()
, чтобы вернуть правильное значение? Я использую CKEditor React, поэтому полагаюсь на onChange
, чтобы установить значение своего состояния для редактора.