首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在main.js中定义了config.paths之后如何访问它

在main.js中定义了config.paths之后如何访问它
EN

Stack Overflow用户
提问于 2014-03-30 16:25:58
回答 1查看 301关注 0票数 0

这是我的main.js

代码语言:javascript
复制
requirejs.config({
    baseUrl: '/js',
    paths: {
        jquery: 'jquery',
        ckeditor: 'ckeditor/ckeditor',
        juiAutocomplete: 'jquery-ui-1.10.4.custom',
        tags: 'bootstrap-tokenfield',
        createPost: 'createPost',
        domReady: 'domReady',
        test: 'dropUpload'
    },
    shim: {
        createPost: {
            deps: ['domReady!']
        }
    },
    deps: ['require'],
    callback: function(require) {
        'use strice';
        var moduleName = location.pathname.replace(/\//g, '-').replace(/^-/, '');
        console.log('moduleName is: ' + moduleName);
        console.log('yes is: ' + require.config);

    }
});

在回调中,我想访问在上面的requirejs.config()中定义的路径。如果有可能,怎么做呢?

我的目的是查看是否定义了模块路径(存在)。如果是,则加载模块脚本。如果未勾选,则控制台中会产生加载错误。

下面是这个控制台命令在requirejs中的可用方法。我找不到访问我在requirejs.config()中定义的路径的方法。这方向对吗?

代码语言:javascript
复制
for (var i in requirejs) {console.log(i);}

config nextTick版本jsExtRegExp isBrowser的toUrl未定义指定的onError createNode加载exec未定义

EN

回答 1

Stack Overflow用户

发布于 2014-03-30 18:39:45

没有从模块内部获取整个RequireJS配置的公共应用程序接口。在您的配置中可以有一个config部分,模块可以访问该部分。

但是,您所描述的试图解决的问题并不要求您阅读配置。以正常方式调用require将加载模块。如果模块无法加载,则会在控制台上生成错误。您可能还想让您的代码知道加载是否成功。您可以使用errback完成此操作

代码语言:javascript
复制
require(['foo'], function (foo) {
    // Whatever you'd like to do with foo on success.
}, function (err) {
    // Whatever you'd like to do on error.
});

如果出于某种原因,您必须直接读取配置,那么它位于requirejs.s.contexts.<context name>.config,其中<context name>是RequireJS上下文的名称。默认上下文被命名为_,因此它的配置将是requirejs.s.contexts._.config。但是,这是而不是公共API的一部分,可以随时更改。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22741864

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档