electron/docs-translations/zh-CN/api/notification.md
Jonas Zhang 66df065e31 Add notification.md file in Chinese
Add notification.md file in Chinese
2017-10-10 21:34:39 +08:00

3.3 KiB

通知

创建系统桌面通知

进程: Main

在渲染器进程中使用

如果你想要从渲染器进程显示通知,则应使用 HTML5 Notification API

类: Notification

创建系统桌面通知

进程: Main

Notification 是一个 EventEmitter.

它通过由 options 设置的原生属性创建一个新的 Notification.

静态方法

Notification 类具有以下静态方法:

Notification.isSupported()

返回 Boolean - 无论当前系统是否支持桌面通知

new Notification([options]) 实验性

  • options 对象
    • title 字符串 - 通知的标题,显示在通知窗口的顶部.
    • subtitle 字符串 - (可选) 通知的副标题,将显示在标题下方. macOS
    • body 字符串 - 通知的正文,将显示在标题或副标题下方.
    • silent 布尔 - (可选) 是否在显示通知时发出系统通知提示音.
    • icon NativeImage - (可选) 通知所使用的图标
    • hasReply 布尔 - (可选) 是否在通知中添加内联的回复选项. macOS
    • replyPlaceholder 字符串 - (可选) 在内联输入字段中的提示占位符. macOS
    • sound 字符串 - (可选) 显示通知时要播放的声音文件的名称. macOS
    • actions NotificationAction[] - (可选) 添加到通知中的操作. 请阅读 NotificationAction 文档中的可用操作和限制. macOS

实例事件

使用 new Notification 创建的对象会发出以下事件:

注意: 某些事件仅在特定的操作系统上可用,请参照标签标示。

事件: 'show'

返回:

  • event 事件

当向用户显示通知时发出. 注意这可以被多次触发, 因为通知可以通过 show() 方法多次显示.

事件: 'click'

返回:

  • event 事件

当用户点击通知时发出.

事件: 'close'

返回:

  • event 事件

当用户手动关闭通知时发出.

在关闭所有通知的情况下,不能保证会发送此事件.

事件: 'reply' macOS

返回:

  • event 事件
  • reply 字符串 - 用户输入到内联回复字段的字符串.

当用户点击 hasReply: true 的通知上的 “回复” 按钮时发出.

Event: 'action' macOS

返回:

  • event 事件
  • index Number - The index of the action that was activated

实例方法

使用 new Notification 创建的对象具有以下实例方法:

notification.show()

立即向用户显示通知. 请注意这不同于 HTML5 Notification 的实现, 简单地实例化一个 new Notification 不会立即向用户显示, 你需要在操作系统显示之前调用此方法.

播放声音

在 macOS 上, 你可以在显示通知时指定要播放的声音的名称. 除了自定义声音文件, 可以使用任意默认声音 (在 “系统偏好设置” > “声音” 下) . 同时确保声音文件被复制到应用程序包下 (例如YourApp.app/Contents/Resources), 或以下位置之一:

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

查看 NSSound 文档获取更多信息.