requirejs如何加载引用模块中定义的模块

发布于 2022-09-06 00:25:48 字数 4164 浏览 17 评论 0

//重命名depends
define("depends",["require", "exports", "jquery", "hermes/cgi/comm", "utils", "js/modules/uuid", "spa-monitor.min"],
function(require, e) {
    var $ = require("jquery");
    var t = window.GDT || {};
    var a = require("hermes/cgi/comm"),
    r = require("utils"),
    n = {},
    i = window.location || {};
    var s = {},
    o = i.pathname || "",
    d = "",
    u = /\/atlas\/([0-9]*)/,
    c = require("js/modules/uuid"),
    g = require("spa-monitor.min");
    function m(e) {
        var t = e.response || {};
        var a = {
            ret: t.ret,
            msg: t.msg || ""
        };
        g.cgi({
            data: {
                owner: d || "",
                source: "atlas",
                cgi: e.cgiUrl,
                method: e.type || "",
                params: e.data,
                responsetext: a,
                ret: e.response && typeof e.response.ret != "undefined" ? e.response.ret: "",
                time: e.spentTime,
                content: e.mod && e.act ? "mod=" + e.mod + "&act=" + e.act: "",
                invoice_id: c.get()
            },
            batchReport: false,
            useSendBeacon: true
        })
    }
    var v = function p(e, t, n) {
        n = n || {};
        var i = "/ec/api.php?mod={mod}&act={act}";
        n.base = n.base || i;

        if (n.base && d && n.base.indexOf("owner=") == -1) {
            n.base += (n.base.indexOf("?") > 0 ? "&": "?") + "owner=" + d
        }
        var s = a.getURL(e, t, n);
        function o() {
            var e = arguments[1] || "";
            r.log(e)
        }
        return function(a, n) {
            var i = {
                url: s,
                data: {},
                success: a,
                error: o
            };
            var d = (new Date).getTime();
            $.extend(i, n);
            var u = r.io.get(i);
            u.always(function(a) {
                a = a || {};
                m({
                    cgiUrl: s,
                    type: "post",
                    data: i.data,
                    spentTime: Math.ceil((new Date).getTime() - d),
                    response: a,
                    mod: e,
                    act: t
                })
            });

            return u
        }
    };
    if (o && u.test(o) && RegExp.$1) {
        s["owner"] = RegExp.$1;
        d = RegExp.$1
    }
    d = d || t.owner;
    n.getAduserInfo = v("aduser", "info");
    e.run = function(e) {
        var a = e ||
        function() {},
        r = function o(e) {
            var t = e || {};
            if (t.ret != 0) {
                alert(t.msg || "系统发生错误,错误码为:" + t.ret);
                top.location.href = "http:///index.shtml?refer=" + i.href
            }
        };
        n.getAduserInfo(function(e) {
            var n = t.g_env && t.g_env.data ? t.g_env.data: {};
            if (e && e.ret == 0 && e.data) {
                t.g_adUser = $.extend(true, {},
                t.g_adUser, e);
                t.aduser = $.extend(true, {},
                t.aduser, e.data);
                t.gAduser = $.extend(true, {},
                t.gAduser, e.data);
                t.privilege = $.extend(true, {},
                t.privilege, e.data.privilege);
                t.owner = e.data.aduid || d;
                n.servertime = e.data.time ? e.data.time: +new Date / 1e3;
                n.env = e.data.env ? e.data.env: "formal";
                t.env = $.extend(true, {},
                t.env, n);
                window.GDT = t;
                define("env", t.env);
                define("aduser", t.aduser);
                define("privilege", t.privilege);
                a(e)
            } else {
                r(e)
            }
        },
        {
            error: r,
            data: s
        })
    }
});

如上面代码所示,如果我另外定义一个模块

define("js/services/common", ["require", "depends"],function(require){
   var depends = require("depends")
})

这里可以引用depends模块,但是我是想要用到depends模块最后定义的aduser,请教大神应该如何引用?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

遗忘曾经 2022-09-13 00:25:48

试试这样呢

define("js/services/common", ["require", "depends", "aduser"],function(require){
   var depends = require("depends")
   var aduser = require("aduser")
})
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文