Перейти к содержимому
ФреймворкJavaScript

Saver API: сериализация редактора в JSON

Сохранение и экспорт содержимого редактора.

Обновлено 8 сент. 2026 г.Редактировать на GitHub

Как получить экземпляр редактора

Методы ниже вызываются на редакторе, созданном через new Blok(). Они доступны после того, как разрешится editor.isReady.

TypeScript
// You already hold the instance returned by the constructor.
const editor = new Blok({ holder: 'editor' });
await editor.isReady;

// Call any API method on it.
editor.caret.setToLastBlock('end');

Методы

saver.save()

Promise<OutputData>

Псевдоним основного метода save(). Отклоняется, пока включён режим только для чтения. Выводит предупреждение и выбрасывает Error("Blok's content can not be saved in read-only mode") ещё до того, как дело дойдёт до Saver. Защитите вызов проверкой editor.readOnly.isEnabled или сначала вызовите await editor.readOnly.set(false).

Когда использовать

Идентичен editor.save(). Он нужен коду, который работает через модуль saver. Оба дожидаются полного дерева блоков.

Ошибки

  • Включён режим только для чтения (editor.readOnly.isEnabled === true).

    Blok's content can not be saved in read-only mode

    Отключите режим только для чтения через readOnly.set(false) перед сохранением или ограничьте вызов проверкой readOnly.isEnabled.

  • Сбор данных завершился ошибкой (save() инструмента выбросил исключение).

    Blok's content can not be saved because collecting data failed

    Изучите ошибку из отклонённого промиса: это собственная ошибка инструмента всякий раз, когда Saver её записал.

TypeScript
if (!editor.readOnly.isEnabled) {
  const data = await editor.saver.save();
  // Returns: { version, time, blocks }
}