我目前正在尝试将 Chrome 扩展迁移到 Firefox
我尝试阅读入门指南,但在 chrome 中找不到类似 background.js 的内容
我只需在 main.js 中连接并维护套接字吗? main.js的生命周期是怎样的,什么时候被调用,什么时候会被销毁
最佳答案
你的main.js
和其他模块(在lib/
下)确实与chrome扩展的background.js
类似。
main.js
将在加载项启动时(安装后或浏览器启动时)运行,并一直保留到加载项关闭(浏览器关闭、用户禁用或卸载附加组件)。
但是,main.js
无法访问 HTML5 (DOM) API,因为没有底层网页。解决此问题的最简单方法是使用 page-worker
使用本地 (data/
) html 页面,该页面执行实际的 Websocket 连接并在工作程序和 main.js
或任何其他模块和/或内容脚本之间使用常规消息传递你得到了。
关于javascript - 如何在 firefox 插件后台保持持续的 websocket 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19411538/