我已经为requirejs编写了一个插件,可以将代码拉到websocket上。
效果很好!问题是,当代码通过套接字加载时,它可能引用需要从websocket加载的其他代码。
因此,例如,第一个电话可能是:
//defining library.js
define( [ './some/other/resource' ],
function(resource) {
//do stuff with resource here
}
);
//defining caller
define( [ 'websocket!namespace:path/to/library.js' ],
function(library) {
//do stuff with library here
}
);
但是如果library.js需要()它需要的东西,我需要为来自该库的所有请求添加前缀:
'websocket!namespace:'
上述代码将在
处产生请求'namespace:path/to/some/other/resource'
我一直在尝试在config中添加插件前缀:
require.config({
paths: {
'namespace': 'websocket!namespace'
}
});
但似乎当来自库的请求被规范化时,我认为它们不会引用路径配置,或者那时插件已被剥离。
如何设置配置以使所有对命名空间的请求都包含插件,或者如何为来自库的后续请求保留插件前缀?