在一个文件中定义的不同文件中的全局函数可见性?

Global function visibility in different files defined in one?

我很难理解另一个脚本中函数的范围。

脚本 1 定义库:

define(['jquery', './lib/components/base/modal', 'https://domain.name/script_prod.js?v='+Math.random()], function($, Modal) {
    new Modal({params}); // OK: func is visible
    var CustomWidget = MyWidget;
    return CustomWidget;
});

脚本 2 和我的函数:

    var MyWidget = function() {
        var self = this,
            system = self.system;
new Modal(Pparams}); // Error: func not visible
        return this;
    };

如何使函数 Modal()(来自模态库)在脚本 2 中可见?

我尝试在脚本 1 中定义全局 var modal = new Modal(); 并在脚本 2 中调用 - 也不起作用!

var modal = new Modal();这将使变量成为您正在定义的模块的局部变量,使 Modal 对象成为全局变量的方法是: window.modal=新模态();

或者创建一个具有以下导出的模块: exports.modal=新模式();