假设我们有 Chrome 扩展,它使用背景页面、弹出页面,可能还有其他一些视图和内容脚本。有一些与主题领域相关的常量数据,必须可以从所有视图和内容脚本中访问。
共享这些数据的最佳做法是什么?
问问题
1563 次
2 回答
9
一种方法是将所有共享数据保留在后台页面中,并通过大多数上下文可用的getBackgroundPage访问它。如果不可用(例如在上下文脚本中),您可以使用消息传递来获取数据。
于 2011-11-08T17:01:19.147 回答
4
正如@BorisSmus 提到的,您可以创建一个单独的constants.js
文件,将其包含在您需要的任何地方。
例如,在您的manifest.json
:
"content_scripts": [
{
"js": ["constants.js", /* ... your other content scripts ... */]
}
],
<head>
在弹出页面和背景页面的顶部有以下内容:
<script src="constants.js"></script>
如果其中一个用户意外地修改了变量,这也具有不会导致问题的好处constants.js
,因为每个用户都有自己的副本。
于 2017-04-02T01:52:27.680 回答