javascript - 在 Firefox 扩展中的两个后台脚本之间共享变量
问题描述
让我们建议我有以下manifest.json
文件:
{
"manifest_version": 2,
"name": "My Test Extension",
"version": "1.0",
"icons": {
"48": "icons/favicon-48x48.png",
},
"permissions": [
"tabs",
"cookies",
"<all_urls>"
],
"background": {
"scripts": ["background/background.js", "background/partners.js"]
}
}
如果我这样定义一个变量background.js
:var testVariable = 'test';
,有什么办法可以访问这个相同的变量partners.js
吗?
解决方案
当然有可能。所有后台脚本都在同一个上下文背景页面中运行。因此,在后台脚本中全局定义的任何变量(即在最高级别或 via window.varname
)都可用于任何其他后台脚本 viawindow.varname
或 just varname
。
就像普通网页一样:如果它有多个 JS 脚本,它们都共享全局定义的变量。
推荐阅读
- python - 如何在 python 中正确存储用户输入?
- python - 使用 Google Cloud KMS 在 Python 中实现双向 TLS
- css - 物化 CSS 选择下拉箭头移位
- javascript - 如何修复我的代码以在第二次单击时隐藏 div 功能
- java - 将 Java 对象数据作为 JSON 字符串打印到服务器响应中
- machine-learning - 我的 Azure 机器学习 Web 服务有相同的结果。如何克服这个问题?
- .net-core - 错误的日期时间保存了 GCP Datastore .net
- java - Android Studio 控制台不允许我向扫描仪输入输入
- java - LoadBalancer 背后的 OAuth2 授权
- javascript - 循环遍历元素并更改类