Requirejs - 仅在条件为真时加载模块

kee*_*web 5 jquery requirejs backbone.js js-amd

使用Requirejs,如果条件为真,我怎样才能加载模块?例如,如果用户是Admin,则加载文件a.js.

PS:我正在使用Backbone和Requirejs.

Pau*_*ime 5

像这样的东西?

define([], function () {
    function realWork (modulea) {
        // do stuff ...
        // so stuff with modulea
        if (modulea) {
            ...
        }
    }

    if (isAdmin) {
        require(["modulea"], function (modulea) {
            realWork(modulea);
        });
    } else {
        realWork();
    }
});
Run Code Online (Sandbox Code Playgroud)

如果你发现自己重复模式,你可能可以编写自己的requirejs插件来整理它.