在一个文件中定义的不同文件中的全局函数可见性?
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=新模式();
我很难理解另一个脚本中函数的范围。
脚本 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=新模式();