最近文档 (Windows & macOS)

概览

Windows 和 macOS 分别通过打开跳转列表和dock菜单使应用程序能够快速的访问最近打开的文档列表。

JumpList:

跳转列表最近的文件

应用 dock 菜单

macOS Dock 菜单

要将文件添加到最近的文档,您需要使用app.addRecentDocument API。

示例

将一个项目添加到最近文档

从起 Quick Start Guide 示例的应用程序开始,将以下行添加到 main.js 文件:

  1. const { app } = require('electron')
  2. app.addRecentDocument('/Users/USERNAME/Desktop/work.type')

启动 Electron 应用程序后,右键点击应用程序图标。 您应该看到您刚刚添加的项目。 在本指南中,项目是位于项目根目录下的 Markdown 文件:

最近文档

清除最近文档列表

To clear the list of recent documents, you need to use app.clearRecentDocuments API in the main.js file:

  1. const { app } = require('electron')
  2. app.clearRecentDocuments()

补充资料

Windows 注意事项

若要在 Windows 上使用此功能,您的应用程序必须注册为这类文件的处理程序。 否则,文件将不会在跳转列表中出现。 你可以在 Application Registration.aspx) 里找到所有关于注册事宜的说明。

当用户点击“跳转列表”上的一个文件时,系统会启动一个新的应用程序的实例 ,而文件的路径将作为一个命令行参数被传入这个实例。

macOS 注意事项

将最近文档列表添加到应用程序菜单

您可以添加菜单项以访问和清除最近的文档,方法是在菜单模板中添加以下代码片段:

  1. {
  2. "submenu":[
  3. {
  4. "label":"Open Recent",
  5. "role":"recentdocuments",
  6. "submenu":[
  7. {
  8. "label":"Clear Recent",
  9. "role":"clearrecentdocuments"
  10. }
  11. ]
  12. }
  13. ]
  14. }

请确保在 'ready'事件后添加应用菜单而不是之前,否则菜单项将被禁用:

  1. const { app, Menu } = require('electron')
  2. const template = [
  3. // 这里是菜单模版
  4. ]
  5. const menu = Menu.buildFromTemplate(template)
  6. app.whenReady().then(() => {
  7. Menu.setApplicationMenu(menu)
  8. })

macOS 最近文档菜单项

从 “最近文档” 菜单中请求文件时, 将为其发出 app 模块的 open-file 事件。