我有一个requirejs的实例,我想以配置另一个实例的完全相同的方式配置。有没有办法获得我用过的确切配置对象?
具体来说,我正在动态构建一个iframe并向其编写html。我需要将一个require版本注入到与父文档配置相同的iframe中。有没有办法做到这一点?
答案 0 :(得分:1)
我可以想到两种方法:
不是将对象文字提供给require.config
,而是将您提供给RequireJS的配置放在一个众所周知的位置,并将其传递给您需要执行的多个配置调用:
window.myapp_requirejs_config = { baseUrl: ... };
require.config(window.myapp_requirejs_config);
require.config
调用可以在不同的上下文中重复并使用相同的对象。如果您有RequireJS组合配置并且希望能够使用RequireJS使用一起组合的配置,这将不起作用。但是,以这种方式执行操作不会有意外破坏的风险,因为它仅依赖于RequireJS的文档和公共部分。
您为RequireJS提供的配置位于requirejs.s.contexts.<context name>.config
,其中<context name>
是RequireJS上下文的名称。默认上下文名为_
,因此其配置为requirejs.s.contexts._.config
。但是,这不是公共API的一部分,可以随时更改。