Chrome扩展程序膨胀背景页面

时间:2013-07-31 14:01:27

标签: javascript google-chrome google-chrome-extension

是否有任何技术可以在chrome扩展中分解或模块化背景页面?当我继续开发我的扩展时,几乎所有的javascript都在后台页面中,因为它是扩展的唯一持久运行脚本(我的javascript的少数是在popup.js和内容脚本中)。 只是想知道开发人员做了什么 - 只是接受一个非常大的background.js文件?理想情况下,我想“包含”包含数据或对象的不同js文件,并将它们简单地包含在background.js中,但这在javascript中显然是不可能的。

有什么建议吗?

2 个答案:

答案 0 :(得分:1)

manifest.json 文件中,您可以指定要加载到后台事件页面的多个脚本:

"background": {
    "scripts": [
        "foo.js",
        "bar.js",
        "baz.js"
        // etc
    ],
    "persistent": true // or false!
}

答案 1 :(得分:0)

您也可以指定自己的背景页,而不是指定后台脚本,有关文档,请参阅http://developer.chrome.com/extensions/background_pages.html。这样的后台页面允许您使用常规脚本标记或其他技术加载任意数量的脚本。当您指定后台脚本而不是后台页面时,会为您生成一个默认的后台页面(其中一个脚本标记指向您的脚本)。

您还可以查看RequireJS等脚本加载器。

我目前正在使用使用Browserify编译的CommonJS模块(即Node.js中使用的样式)开发扩展,它将所有模块组合成一个大文件。这对我很有用。