experiment with namespace loading
This commit is contained in:
parent
5601760329
commit
d4f2ac21bd
4 changed files with 40 additions and 37 deletions
|
|
@ -63,8 +63,22 @@ let mods = [];
|
|||
let modn = {};
|
||||
|
||||
// register module without a load function
|
||||
gapp.register = (name, deps) => {
|
||||
gapp.register = (name, deps, fn) => {
|
||||
gapp.load(undefined, name, deps);
|
||||
if (fn) {
|
||||
let toks = name.split('.');
|
||||
let root = self;
|
||||
let map = toks.pop();
|
||||
for (let tok of toks) {
|
||||
root = root[tok];
|
||||
if (!root) {
|
||||
console.log({missing_root: tok, at: name});
|
||||
root = root[tok] = {};
|
||||
}
|
||||
}
|
||||
map = root[map] = root[map] || {};
|
||||
fn(self, exports => Object.assign(map, exports));
|
||||
}
|
||||
};
|
||||
|
||||
// register module with a load function
|
||||
|
|
|
|||
Loading…
Reference in a new issue