Skip to content
ФреймворкJavaScript

Notifier API: показ уведомлений

Отображение уведомлений для пользователей.

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

Методы ниже вызываются на редакторе, созданном через 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');

Методы

notifier.show(options)

void

Show a notification message. Supports simple, confirm, and prompt notifications.

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

Встроенное уведомление для лёгкой обратной связи. type: 'confirm' или 'prompt' — для ответа да/нет или текста.

Параметры

ПараметрТипОбязательныйПо умолчаниюОписание
optionsNotifierOptions | ConfirmNotifierOptions | PromptNotifierOptionsОбязательныйКонфигурация уведомления. Форма зависит от type.
options.messagestringОбязательныйТекст уведомления. Может содержать HTML.
options.type'alert' | 'confirm' | 'prompt''alert'Тип уведомления. confirm и prompt добавляют кнопки действий.
options.style'success' | 'error'undefinedВстроенный визуальный стиль для уведомлений-алертов.
options.timenumber8000Время автозакрытия в мс для всех типов уведомлений (по умолчанию 8000).
options.okTextstring'Confirm' / 'Ok'Текст кнопки подтверждения/отправки (только для confirm/prompt).
options.okHandler(event: Event) => void | (value: string) => voidundefinedКолбэк подтверждения/отправки. Получает событие клика для confirm или значение поля для prompt. Обязателен для уведомлений типа prompt.
options.cancelTextstring'Cancel'Текст кнопки отмены (только для confirm).
options.cancelHandler(event: Event) => voidundefinedКолбэк отмены/закрытия (только для confirm).
options.inputTypestring'text'Тип HTML-поля ввода для текстового поля prompt (только для типа prompt).
options.placeholderstringundefinedТекст плейсхолдера для поля ввода prompt (только для типа prompt).
options.defaultstringundefinedЗначение по умолчанию, предзаполненное в поле ввода prompt (только для типа prompt).

Ошибки

  • Модуль уведомлений не загрузился (например, заблокирован CSP, ошибка динамического импорта).

    [Blok] Failed to display notification. Reason: <error>

    show() никогда не выбрасывает ошибку и не отклоняет промис — проверьте консоль браузера, так как сбой только логируется, а не передаётся в точку вызова.

TypeScript
// Simple notification
editor.notifier.show({
  message: 'Changes saved',
  style: 'success'
});
// → renders a toast in the corner of the editor; returns nothing to await

// Confirm notification
editor.notifier.show({
  message: 'Delete this block?',
  type: 'confirm',
  okHandler: () => console.log('Confirmed'),
  cancelHandler: () => console.log('Cancelled')
});

// Prompt notification
editor.notifier.show({
  message: 'Enter a title',
  type: 'prompt',
  okHandler: (value) => console.log('Entered:', value)
});