如何访问Require.js的配置

时间:2012-12-21 20:47:42

标签: javascript requirejs

我尝试在模块中获取Require.js的baseUrl配置,但我找不到它存储的位置。

define([], function() {
  // Here I'd like to access the `baseUrl` require.js is using
  var baseUrl = requirejs.config().baseUrl;
});

就我而言,baseUrl是由Require.js使用脚本文件的data-main属性设置的。

我知道我可以请求module访问config属性(例如define(['module'])),但我找不到如何访问更高级别的配置选项。

3 个答案:

答案 0 :(得分:85)

您也可以将配置发送到:

requirejs.s.contexts._.config 

直接检查配置对象。

https://groups.google.com/forum/#!topic/requirejs/Hf-qNmM0ceI

答案 1 :(得分:18)

在RequireJS 2.1.5中,您可以像epascarello一样获取基本URL,除非您需要传递空字符串。

var baseURL = require.toUrl('');

答案 2 :(得分:13)

您要使用toUrl吗?

define({
    load: function (name, parentRequire, load, config) {
           var fullUrl = parentRequire.toUrl("foo/bar.css");
    }
});

修改
从require.js 2.1.3开始,calling toURL return the path without extension。如此,要获得baseUrl:

var baseURL = require.toUrl();