Chrome 插件开发:Alarms 定时与事件页面

Chrome 插件本身也提供了计划任务,使用起来也非常简单,我们主要顺着思路来解释一下事件页面的概念。

在使用之前,我们需要清楚,alarms 的 create 只包含了定时器名和一些定时器需要的相关信息,而具体执行什么,则是由 onAlarm 监听决定的,由 alarm 参数的信息来决定执行内容:

chrome.alarms.onAlarm.addListener((alarm) => {
  if (alarm.name === 'sanciyuan-bg-update') {
    chrome.tabs.create({ active: false }, (tab) => setTimeout(() => chrome.tabs.remove(tab.id), 60000));
  }
});

对于这一类监听事件,我们并不需要常驻运行,事件页面就提供了管理这些事件的功能,它是按需启动的,因此会占用更少的资源,任何 Chrome 插件都可以启用事件页面,只需要在清单文件中添加 background 即可:

{
  "name": "我的扩展程序",
  ...
  "background": {
    "scripts": ["eventPage.js"],
    "persistent": false
  },
  ...
}

实际上,persistent 与否才是普通的后台页面与事件页面的区别。

更多的详情可以在文档中查看,这里就不一一介绍了:事件页面

如果您觉得文章不错,可以通过赞助支持我

标签: 知识, 代码段, 使用

添加新评论