GraphDependecies

This commit is contained in:
nelo 2016-10-06 15:16:42 +02:00
parent 750845b9fe
commit 616835b454
7 changed files with 143 additions and 21 deletions

41
@salix/app/src/fake.js Normal file
View File

@ -0,0 +1,41 @@
export const graphRoutes = {
routes: [
{
url: '/index',
state: 'index',
template: '<customer-index></customer-index>',
module: 'compras',
description: '',
image: '',
},
{
url: '/add',
state: 'add',
template: '<customer-add></customer-add>',
module: 'compras',
description: '',
image: '',
},
{
url: '/edit',
state: 'edit',
template: '<customer-edit></customer-edit>',
module: 'compras',
description: '',
image: '',
},
{
url: '/delete',
state: 'delete',
template: '<customer-delete></customer-delete>',
module: 'compras',
description: '',
image: '',
}
],
graphDependendies: {
compras:["crud"],
crud:[]
}
};

View File

@ -1,21 +1,34 @@
import * as core from '@salix/core'; import * as core from '@salix/core';
import * as spliting from './spliting';
import * as spliting from './spliting';
import {routes} from './fake';
core.module.config(function($stateProvider, $urlRouterProvider) { core.module.config(function($stateProvider, $urlRouterProvider) {
$urlRouterProvider.otherwise("/");
core.splitingRegister.registerGraph('hello');
$stateProvider function xxx(route){
.state('index', { return function loader($ocLazyLoad, $q){
url: "/index", return $q((resolve) => {
template :'<customer-add></customer-add>', core.splitingRegister.execute(route.module)
spliting[route.module](() => {
//resolve($ocLazyLoad.load({name: route.module}));
});
});
};
}
$urlRouterProvider.otherwise("/");
routes.forEach(function(route) {
$stateProvider.state(route.state, {
url: route.url,
template :route.template,
resolve: { resolve: {
loader: function($ocLazyLoad, $q){ loader: xxx(route)
return $q((resolve) => {
spliting.crud($ocLazyLoad, resolve);
});
}
} }
}) })
}, this);
}); });

View File

@ -1,14 +1,14 @@
export const crud = (lazy, resolve) => { import * as core from '@salix/core';
require.ensure([], () => {
var module = require('@salix/crud');
resolve(lazy.load({name:'crud'}));
}, "salix.crud"); export const compras = (cb) => {
};
export const compras = () => {
require.ensure([], () => { require.ensure([], () => {
require('@salix/compras') require('@salix/compras')
cb();
}, "salix.compras"); }, "salix.compras");
}; };
export const ventas = () => { export const ventas = () => {
require.ensure([], () => { require.ensure([], () => {
require('@salix/ventas') require('@salix/ventas')

View File

@ -1,8 +1,9 @@
/** /**
* export public module * export public module
*/ */
export * from './module'; export * from './module'
export * from './util'; export * from './util'
export {SplitingRegister as splitingRegister} from './splitingregister'
export {NAME as RESOLVEDEFAULTCOMPONENT, ResolveDefaultComponent} from './resolveDefaultComponents' export {NAME as RESOLVEDEFAULTCOMPONENT, ResolveDefaultComponent} from './resolveDefaultComponents'
export {NAME as INTERPOLATE,Interpolate} from './interpolate' export {NAME as INTERPOLATE,Interpolate} from './interpolate'
export {NAME as BUTTON,directive as ButtonDirective} from './button/button' export {NAME as BUTTON,directive as ButtonDirective} from './button/button'

View File

@ -0,0 +1,32 @@
const _SplitingRegister = ()=>{
var _graph;
var dependencies = {};
return {
registerGraph: function(graph){
_graph = graph;
},
register: function(dependency,loader){
dependencies[dependecy]=loader;
},
execute: function(dependency){
var _array=[];
_array.push(dependency);
var fist =graph[dependency];
//TODO:create dependy graph
while(key=array.pop()){
dependencies[key]();
}
},
write:function(){
console.log(_graph);
}
}
};
export const SplitingRegister = _SplitingRegister();

View File

@ -0,0 +1,8 @@
export const crud = (cb) => {
require.ensure([], () => {
require('@salix/crud');
cb();
}, "salix.crud");
};

27
npm-debug.log Normal file
View File

@ -0,0 +1,27 @@
0 info it worked if it ends with ok
1 verbose cli [ '/usr/local/Cellar/node/6.3.1/bin/node',
1 verbose cli '/usr/local/bin/npm',
1 verbose cli 'run',
1 verbose cli 'dev' ]
2 info using npm@3.10.3
3 info using node@v6.3.1
4 verbose stack Error: missing script: dev
4 verbose stack at run (/usr/local/lib/node_modules/npm/lib/run-script.js:151:19)
4 verbose stack at /usr/local/lib/node_modules/npm/lib/run-script.js:61:5
4 verbose stack at /usr/local/lib/node_modules/npm/node_modules/read-package-json/read-json.js:356:5
4 verbose stack at checkBinReferences_ (/usr/local/lib/node_modules/npm/node_modules/read-package-json/read-json.js:320:45)
4 verbose stack at final (/usr/local/lib/node_modules/npm/node_modules/read-package-json/read-json.js:354:3)
4 verbose stack at then (/usr/local/lib/node_modules/npm/node_modules/read-package-json/read-json.js:124:5)
4 verbose stack at /usr/local/lib/node_modules/npm/node_modules/read-package-json/read-json.js:311:12
4 verbose stack at /usr/local/lib/node_modules/npm/node_modules/graceful-fs/graceful-fs.js:78:16
4 verbose stack at tryToString (fs.js:455:3)
4 verbose stack at FSReqWrap.readFileAfterClose [as oncomplete] (fs.js:442:12)
5 verbose cwd /Users/nelo/Documents/node/salix
6 error Darwin 16.0.0
7 error argv "/usr/local/Cellar/node/6.3.1/bin/node" "/usr/local/bin/npm" "run" "dev"
8 error node v6.3.1
9 error npm v3.10.3
10 error missing script: dev
11 error If you need help, you may report this error at:
11 error <https://github.com/npm/npm/issues>
12 verbose exit [ 1, true ]