릴리즈 2.2.0 이상
이미지 업로드가 완료된 후 발생합니다.
이벤트 등록
API 사용
var editorId = 'synapEditor'; var editorConfig = {}; var html = ''; var editor = new SynapEditor(editorId, editorConfig, html); editor.setEventListener('afterUploadImage', function (e) { });
함수방식
var editorId = 'synapEditor'; var editorConfig = {}; var html = ''; function SynapEditorAfterUploadImage(e) { } new SynapEditor(editorId, editorConfig, html);
에디터 초기화시 등록
var editorId = 'synapEditor'; var editorConfig = {}; var html = ''; var eventListeners = { afterUploadImage: function (e) { } }; new SynapEditor(editorId, editorConfig, html, eventListeners);
함수로 전달되는 객체 형태
함수로 전달되는 파라미터 e의 형식
e
// release 2.2.0 { editor: SynapEditor, eventType: 'afterUploadImage', cancelable: false, returnValue: null, path: '/upload/path/filename.png', // 업로드된 경로 elementId: 'se-123456-abcdefg-7890', // HTML Element Id (wapper) isBackground: false // 배경이미지인지 여부 } // release 2.2.1 이상 { editor: SynapEditor, eventType: 'afterUploadImage', cancelable: false, returnValue: null, fileType: 'image', // [2.2.1] 파일 타입 path: '/upload/path/filename.png', elementId: 'se-123456-abcdefg-7890', isBackground: false } // release 2.10.0 이상 { editor: SynapEditor, eventType: 'afterUploadImage', cancelable: false, returnValue: null, fileType: 'image', path: '/upload/path/filename.png', responseData: {}, // [2.10.0] 전체 response 정보 elementId: 'se-123456-abcdefg-7890', isBackground: false } // release 2.15.0 이상 { editor: SynapEditor, eventType: 'afterUploadImage', cancelable: false, returnValue: null, fileType: 'image', path: '/upload/path/filename.png', responseData: {}, elementId: 'se-123456-abcdefg-7890', isBackground: false, error: undefined // [2.15.0] 업로드 실패시 에러 정보 }
이미지 업로드 실패
릴리즈 2.15.0 이상
2.15.0 릴리즈부터는 업로드가 실패했을 때에도 afterUploadImage
이벤트가 발생합니다.
업로드가 실패했을 때 afterUploadImage
이벤트에 전달되는 객체의 error
프로퍼티에 Error
객체가 전달됩니다.
업로드가 실패했을 때 실패한 이미지 제거 예시
editor.setEventListener('afterUploadImage', function (e) { if (e.error && e.error.status === 500) { e.editor.execCommand('showDialog', 'alert', '이미지 업로드에 실패했습니다.'); var image = e.editor.getAPIModelById(e.elementId); image.remove(); } });