流程执行引擎,具体使用参考 test/unit/index.spec.js 测试用例和 demo
import runnable from 'flow-engine'
/**
* aa1 aa2 aa3 先执行先返回,返回输入作为入参,然后到bb1,返回数据然后到cc1 cc2
* /
const flowConfig = [
[aa1, aa2(), aa3()],
bb1,
[cc1, cc2]
];
const param = {
name: 123
}
runnable.excute(flowConfig, param ,()=>{
console.log('callback executed!');
})
说明:原子函数 aa1,aa2 中数据执行流程正常 return 或者 promise.resolve,终止分支流程使用 promise.reject
在初始化参数中可以传入 debug 参数:
-
mod: 调试模式
-
1 表示调试模式,会先输出执行的当前函数和入参,然后进入 debugger 断点
-
2 表示打印模式,输出执行的当前函数和入参,不会断点
-
-
disableNodes: 禁用节点名称,执行中会自动断掉对应节点流程
import runnable from 'flow-engine'
/**
* aa1 aa2 aa3 先执行先返回,返回输入作为入参,然后到bb1,返回数据然后到cc1 cc2
* /
const flowConfig = [
[aa1, aa2(), aa3()],
bb1,
[cc1, cc2]
];
const ONLY_DEBUG = 1
const ONLY_CONSOLE = 2
const param = {
name: 123,
debug: {
mode: ONLY_DEBUG,
disableNodes:['xxxx']
}
}
runnable.excute(flowConfig, param ,()=>{
console.log('callback executed!');
})