我想只在需要时动态运行后台脚本。
我的后台脚本基于存储在localStroage中的数组创建一个上下文菜单。后台脚本在加载时只运行一次,当用户更新 localStroage 中的数组时,我想再次运行脚本,我该怎么做?
事件页面是专门为解决"大多数时候什么都不做的背景页面"问题而创建的。它们在处于非活动状态几秒钟后卸载,并在发生为其注册处理程序的任何事件时再次运行。
阅读文档 - 关于它们必须如何构建存在细微差别。此外,特别是对于上下文菜单,不能使用onclick
参数,必须改用chrome.contextMenus.onClicked
事件。
您可以使用消息从其他扩展上下文中唤醒事件页面。此外,请考虑使用 chrome.storage
API 而不是 localStorage
,后者附带一个 chrome.storage.onChanged
事件。