requirejs - 如何从插件中获取"baseUrl"信息?

chr*_*zer 2 javascript requirejs

我正在构建requirejs插件并将其加载到我的页面上.但是,在我的页面上,我设置了一个baseUrl值,这样我就可以加载像"tools/foo"这样的路径的插件而不是"/ static/js/blah/tools/foo"

但现在我想允许插件加载css文件.我想通过添加标题的链接来完成此操作,而不是使用"text!foo.css"加载css内容.我也不想指定css文件的完全限定路径.有没有办法让我从requirejs插件中提取我在页面上设置的baseUrl设置,以便我可以使用它来帮助查找我的css文件?

jrb*_*rke 7

load函数的parentRequire参数有一个parentRequire.toUrl()方法,该方法将解析任何路径,就像它是模块名称一样,但具有扩展名.所以:

var cssPath = parentRequire.toUrl('tools/foo.css');
Run Code Online (Sandbox Code Playgroud)

会返回像/static/js/blah/tools/foo.css这样的路径.

看起来我忘了将它添加到插件文档页面,我将完成一项任务来记录.