allow exporting function in mini_require.js
This commit is contained in:
parent
846f712969
commit
23f9f6f849
1 changed files with 27 additions and 27 deletions
|
|
@ -61,10 +61,13 @@ var _define = function(module, deps, payload) {
|
||||||
if (arguments.length == 2)
|
if (arguments.length == 2)
|
||||||
payload = deps;
|
payload = deps;
|
||||||
|
|
||||||
if (!_define.modules)
|
if (!_define.modules) {
|
||||||
_define.modules = {};
|
_define.modules = Object.create(null);
|
||||||
|
_define.payloads = Object.create(null);
|
||||||
|
}
|
||||||
|
|
||||||
_define.modules[module] = payload;
|
_define.payloads[module] = payload;
|
||||||
|
define.modules[module] = null;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -130,30 +133,27 @@ var lookup = function(parentId, moduleName) {
|
||||||
|
|
||||||
var module = _define.modules[moduleName];
|
var module = _define.modules[moduleName];
|
||||||
if (!module) {
|
if (!module) {
|
||||||
return null;
|
module = _define.payloads[moduleName];
|
||||||
|
if (typeof module === 'function') {
|
||||||
|
var exports = {};
|
||||||
|
var mod = {
|
||||||
|
id: moduleName,
|
||||||
|
uri: '',
|
||||||
|
exports: exports,
|
||||||
|
packaged: true
|
||||||
|
};
|
||||||
|
|
||||||
|
var req = function(module, callback) {
|
||||||
|
return _require(moduleName, module, callback);
|
||||||
|
};
|
||||||
|
|
||||||
|
var returnValue = module(req, exports, mod);
|
||||||
|
exports = returnValue || mod.exports;
|
||||||
|
_define.modules[moduleName] = exports;
|
||||||
|
delete _define.payloads[moduleName];
|
||||||
|
}
|
||||||
|
module = _define.modules[moduleName] = exports;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof module === 'function') {
|
|
||||||
var exports = {};
|
|
||||||
var mod = {
|
|
||||||
id: moduleName,
|
|
||||||
uri: '',
|
|
||||||
exports: exports,
|
|
||||||
packaged: true
|
|
||||||
};
|
|
||||||
|
|
||||||
var req = function(module, callback) {
|
|
||||||
return _require(moduleName, module, callback);
|
|
||||||
};
|
|
||||||
|
|
||||||
var returnValue = module(req, exports, mod);
|
|
||||||
exports = returnValue || mod.exports;
|
|
||||||
|
|
||||||
// cache the resulting module object for next time
|
|
||||||
_define.modules[moduleName] = exports;
|
|
||||||
return exports;
|
|
||||||
}
|
|
||||||
|
|
||||||
return module;
|
return module;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue