我正在创建一个 google chrome 扩展程序,当它在选项卡上激活时,会将一些自定义代码和一些新视图加载到该窗口的文档中。我想使用 requireJS 来加载这些由扩展调用的新代码模块。但是,我担心如果调用此扩展程序的应用程序/网站已经在运行 requireJS,可能会发生冲突或名称冲突,而我从头开始调用它会擦除站点本机 require.config 或以其他方式导致一些未知的恶作剧。每次我的扩展程序在其上激活时,这都会导致站点中断。
那么有没有办法将requireJS和backboneJS的全新和“独立”实例加载到可能已经有自己的实例运行的站点上?如果没有,有没有办法使我的要求和配置与目标应用程序的要求和配置相协调?
编辑更多细节:好的,关于我的扩展的更多细节:我正在页面上创建一个 iFrame,它有一个完全独特的文档空间。但是我仍然需要 iFrame 来了解原始文档中发生的某些事情(例如:当用户单击该文档中的某个 div 时,我希望将此事件传递给 iFrame)。为此,我通过原始文档的内容脚本传递各种对象,直到扩展,返回到 iframe 的内容脚本,最后(使用 window.onMessage)传递到 iFrame 的 javascript 环境。我开发的过程与此处描述的过程大致相似。是的,这让我头疼。
无论如何,所有这一切的重点是我在 iframe、扩展和原始源文档中有很多代码。所以,我想在这些上下文中都有一个 require 实例。