setCustomImportFunction
3.2.2507 버전부터 지원합니다.
문서 임포트를 처리하기 위한 사용자 정의 함수를 등록합니다. 설정하면 에디터의 기본 임포트 로직이 우회되고 대신 사용자의 함수가 호출됩니다.
매개변수
| 이름 | 타입 | 설명 |
|---|---|---|
func | function | 사용자 정의 임포트 함수 |
사용자 정의 함수 시그니처
| 이름 | 타입 | 설명 |
|---|---|---|
docFile | File | 임포트할 문서 파일 |
bOverwrite | boolean | 현재 내용 덮어쓰기 여부 |
반환값
| 키 | 타입 | 설명 |
|---|---|---|
serializedData | number[] | 변환 후 직렬화된 문서 모델 |
importPath | string | 브라우저에서 변환된 파일에 접근할 수 있는 경로 |
importImageMap | Object | 변환된 이미지 리소스와 접근 가능한 이미지 URL을 짝지은 맵 |
사용자 정의 임포트 함수는 반드시 직렬화된 문서 모델 데이터, 브라우저가 임포트된 파일에 접근할 수 있는 URL/경로, 그리고 변환된 이미지-리소스 맵을 반환해야 합니다.
예시
// Synchronous example
editor.setCustomImportFunction((docFile, bOverwrite) => {
// perform import
return { serializedData, importPath, importImageMap };
});
3.2.2507 버전부터 지원합니다.
// Async example (async/await)
editor.setCustomImportFunction(async (docFile, bOverwrite) => {
const { serializedData, importPath, importImageMap } =
await new Promise(resolve => setTimeout(resolve, 1000)); // perform import
return { serializedData, importPath, importImageMap };
});
// Async example (Promise)
editor.setCustomImportFunction((docFile, bOverwrite) => {
return new Promise((resolve, reject) => { // perform import
setTimeout(() => {
resolve({ serializedData, importPath, importImageMap });
}, 1000);
});
});