Spec-Zone.ru › Electron

Уведомление

Создание уведомлений на рабочем столе ОС

Процесс: Основной

Использование в процессе рендеринга​

Если вы хотите отобразить уведомления из процесса рендеринга, используйте API уведомлений HTML5

Класс: Notification​

Создание уведомлений на рабочем столе ОС

Процесс: Основной

Notification является EventEmitter.

Он создаёт новое Notification с нативными свойствами, установленными options.

Статические методы​

Класс Notification имеет следующие статические методы:

Notification.isSupported()​

Возвращает boolean — поддерживаются ли уведомления на рабочем столе на текущей системе

new Notification([options])​

  • options Объект (необязательно)
    • title строка (необязательно) — заголовок уведомления, который будет отображаться в верхней части окна уведомления при его показе.
    • subtitle строка (необязательно) macOS — подзаголовок уведомления, который будет отображаться под заголовком.
    • body строка (необязательно) — текст тела уведомления, который будет отображаться под заголовком или подзаголовком.
    • silent логическое значение (необязательно) — следует ли издавать звуковой сигнал ОС при показе уведомления.
    • icon (строка | NativeImage) (необязательно) — значок для использования в уведомлении.
    • hasReply логическое значение (необязательно) macOS — следует ли добавлять опцию ввода ответа в уведомление.
    • timeoutType строка (необязательно) Linux Windows — время ожидания уведомления. Может быть 'default' или 'never'.
    • replyPlaceholder строка (необязательно) macOS — подстановка для ввода ответа в поле ввода.
    • sound строка (необязательно) macOS — имя файла звука, который следует воспроизводить при показе уведомления.
    • urgency строка (необязательно) Linux — уровень срочности уведомления. Может быть 'normal', 'critical' или 'low'.
    • actions NotificationAction[] (необязательно) macOS — действия для добавления в уведомление. Прочитайте доступные действия и ограничения в документации NotificationAction.
    • closeButtonText строка (необязательно) macOS — пользовательский заголовок для кнопки закрытия уведомления. Пустая строка приведет к использованию локального текста по умолчанию.
    • toastXml строка (необязательно) Windows — пользовательское описание уведомления в Windows, заменяющее все вышеперечисленные свойства. Предоставляет полную настройку дизайна и поведения уведомления.

События экземпляра​

Созданные с помощью new Notification объекты излучают следующие события:

Примечание: Некоторые события доступны только в определённых операционных системах и помечены соответствующим образом.

Событие: 'show'​

Возвращает:

  • event Событие

Издаётся, когда уведомление отображается пользователю. Обратите внимание, что это может вызываться несколько раз, так как уведомление может отображаться несколько раз с помощью метода show().

Событие: 'click'​

Возвращает:

  • event Событие

Издаётся, когда пользователь нажимает на уведомление.

Событие: 'close'​

Возвращает:

  • event Событие

Издаётся, когда пользователь закрывает уведомление.

Это событие не гарантируется во всех случаях закрытия уведомления.

Событие: 'reply' macOS​

Возвращает:

  • event Событие
  • reply строка — строка, введённая пользователем в поле ввода ответа.

Издаётся, когда пользователь нажимает кнопку «Ответить» в уведомлении с hasReply: true.

Событие: 'action' macOS​

Возвращает:

  • event Событие
  • index число — индекс активированного действия.

Событие: 'failed' Windows​

Возвращает:

  • event Событие
  • error строка — ошибка, возникшая во время выполнения метода show().

Издаётся при возникновении ошибки при создании и показе нативного уведомления.

Методы экземпляра​

Объекты, созданные с помощью new Notification, имеют следующие методы экземпляра:

notification.show()​

Немедленно отображает уведомление пользователю. Обратите внимание, что, в отличие от реализации уведомлений HTML5, создание объекта new Notification не отображает его сразу пользователю. Вам необходимо вызвать этот метод, прежде чем ОС отобразит его.

Если уведомление было показано ранее, этот метод скроет ранее показанное уведомление и создаст новое с идентичными свойствами.

notification.close()​

Закрывает уведомление.

Свойства экземпляра​

notification.title​

Свойство string, представляющее заголовок уведомления.

notification.subtitle​

Свойство string, представляющее подзаголовок уведомления.

notification.body​

Свойство string, представляющее тело уведомления.

notification.replyPlaceholder​

Свойство string, представляющее подстановку ответа уведомления.

notification.sound​

Свойство string, представляющее звук уведомления.

notification.closeButtonText​

Свойство string, представляющее текст кнопки закрытия уведомления.

notification.silent​

Свойство boolean, представляющее, является ли уведомление беззвучным.

notification.hasReply​

Свойство boolean, представляющее, содержит ли уведомление действие ответа.

notification.urgency Linux​

Свойство string, представляющее уровень срочности уведомления. Может быть 'normal', 'critical' или 'low'.

По умолчанию — 'low'. См. NotifyUrgency для получения дополнительной информации.

notification.timeoutType Linux Windows​

Свойство string, представляющее тип времени ожидания уведомления. Может быть 'default' или 'never'.

Если timeoutType установлено в 'never', уведомление никогда не истекает. Оно остаётся открытым до закрытия вызывающим API или пользователем.

END_OF_DOCUMENT_MARKER

notification.actions​

Свойство NotificationAction[], представляющее действия уведомления.

notification.toastXml Windows​

Свойство string , представляющее пользовательский XML уведомления Toast.

Проигрывание звуков​

В macOS вы можете указать имя звука, который должен проигрываться при отображении уведомления. Можно использовать любые стандартные звуки (в разделе «Системные настройки» → «Звук»), а также пользовательские звуковые файлы. Убедитесь, что звуковой файл скопирован в пакет приложения (например, YourApp.app/Contents/Resources), или в одном из следующих расположений:

  • ~/Library/Sounds
  • /Library/Sounds
  • /Network/Library/Sounds
  • /System/Library/Sounds

Дополнительную информацию см. в документации NSSound.

© GitHub Inc.
Licensed under the MIT license.
https://www.electronjs.org/docs/latest/api/notification

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API