Web SDK

Импорт и экспорт

Перед использованием API браузера выполните интеграцию импорта и экспорта. Приложение реализует загрузку, конвертацию, опрос задач и скачивание с проверкой доступа. API снимков также требуют сервера конвертации. Пример Exchange предназначен для Sheets; поддержку других продуктов и форматов проверяйте отдельно.

Поддерживаемые форматы

В таблице указаны форматы браузерных API этой страницы. Для преобразования файлов Office нужен сервер с поддержкой соответствующего типа документа и формата.

ИмпортЭкспорт
.doc, .docx.docx

Facade API

Импорт

Примечание для режима плагинов

Импортировать пакет Facade вручную нужно только в режиме плагинов. В режиме предустановок соответствующий пакет Facade уже подключён, поэтому дополнительный импорт не требуется.

TypeScript
import '@univerjs-pro/exchange-client/facade'import '@univerjs-pro/docs-exchange-client/facade'

Импорт .docx

Импорт файла .docx с получением unitId

Внимание

Для этого метода требуется совместная работа: он создаёт документ на сервере и возвращает unitId. Если совместная работа не включена, используйте импорт снимка.

При совместном редактировании у каждого документа есть уникальный unitId. Метод univerAPI.importDocToUnitIdAsync принимает параметр file и возвращает unitId, по которому можно открыть документ. Параметр file может быть объектом File или URL удалённого файла.

TypeScript
import '@univerjs-pro/collaboration-client/facade'const unitId = await univerAPI.importDocToUnitIdAsync(file)if (unitId) {  await univerAPI.getCollaboration().loadDocAsync(unitId)}

Импорт файла .docx с получением IDocumentData

Для импорта снимка совместная работа не требуется. Для совместных документов используйте импорт по unitId.

Метод univerAPI.importDocToSnapshotAsync импортирует файл .docx и возвращает данные документа в формате IDocumentData.

TypeScript
// Accept a File objectconst snapshot = await univerAPI.importDocToSnapshotAsync(file)// Or accept a remote file URL// const snapshot = await univerAPI.importDocToSnapshotAsync('https://example.com/filename.docx');// Create a new document via snapshotif (snapshot) univerAPI.createDocument(snapshot)

Экспорт .docx

Экспорт файла .docx по unitId

Внимание

Для экспорта по unitId требуется совместная работа. Если она не включена, используйте экспорт снимка.

При совместном редактировании у каждого документа есть уникальный unitId. Метод univerAPI.exportDocByUnitIdAsync принимает параметр unitId и возвращает объект File.

TypeScript
const fDocument = univerAPI.getActiveDocument()const unitId = fDocument.getId()const file = await univerAPI.exportDocByUnitIdAsync(unitId)// Download the file through the Facade APIif (file) univerAPI.downloadFile(file, 'univer', 'docx')

Экспорт файла .docx с помощью IDocumentData

Для экспорта снимка совместная работа не требуется; этот способ подходит для локальных сценариев.

Метод univerAPI.exportDocBySnapshotAsync принимает IDocumentData и возвращает объект File.

TypeScript
const fDocument = univerAPI.getActiveDocument()const snapshot = fDocument.save()const file = await univerAPI.exportDocBySnapshotAsync(snapshot)// Download the file through the Facade APIif (file) univerAPI.downloadFile(file, 'univer', 'docx')

Удаление встроенных меню и UI-взаимодействий для импорта и экспорта

Univer больше не включает встроенные меню и UI-взаимодействия для импорта и экспорта. Базовые сервисы и Facade API остаются доступными.

Если вашему приложению нужны прежние меню и UI-взаимодействия для импорта и экспорта, используйте пример миграции встроенных меню и UI-взаимодействий для импорта и экспорта, чтобы реализовать их с помощью собственного плагина. Полный исходный код примера доступен для просмотра онлайн и скачивания.

Насколько полезно это руководство?

© 2026 DreamNum Co., Ltd.