标签归档:workflow

JavaScript实现一个单程双向工作流

初衷源于项目中上一步,下一步这种交互需求,而每一步有可能或全部是异步操作,而且会有数据临时存储与获取的需要。

考虑了一些方案,受requirejs,seajs实现的启发,最终实现了这个单程双向工作流对象,而其源码看似相当简单。

那么怎么使用呢?当var flow = new Flow()实例化一个工作流以后,可以调用如下API实现:

1、流程添加API 3个:

// 参数action是一个function回调,比如
// function(i, data) {}
// i是当前步骤的索引,从0开始
// data是所有步骤存储的数据数组,因为本工作流提供数据存储,也自然提供获取
// data[i]即 第i步的数据
// action中的this指向为flow实例对象
flow.start(action); // start其实内部实现为调用next方法,因此start等同于next,其存在价值大概是为了语义
flow.next(action);  // next,添加下一步action
flow.done(action);  // done,完成所有步骤,该方法也是启动整个工作流的必须方法,也必须是最后调用。

Continue reading JavaScript实现一个单程双向工作流

Yeoman-基于node.js的前端项目工作流工具集合

看Yeoman官网描述:Yeoman是一个工作流,一个包含了各种工具及最佳实践的集合。

以下内容源自: http://www.36ria.com/6144

今天明河介绍一个比较新的前端工具:Yeoman

什么是Yeoman

很难使用一句话来表述Yeoman用途,因为Yeoman其实是三个工具的集合:YOGRUNTBOWER,所以需要先解释下这三个工具的用途。