欢迎大家关注腾讯云技术社区-博客园官方主页,我们将持续在博客园为大家推荐技术精品文章哦~

张镇圳,腾讯Web前端高级工程师,对内部系统前端建设有多年经验,喜欢钻研捣鼓各种前端组件和框架。

导语

前面写了一篇文章,叫《一个只有99行代码的JS流程框架》,虽然该框架基本已经能实现一个流程正常的逻辑流转,但是在分模块应用下还是缺少一定的能力,无法将一个页面中的不同模块很好的连接在一起,于是对之前的框架进行了升级,新增了子流程的概念。

子流程

什么是子流程?在这个升级后的框架里(当然代码已经不止99行了,不要在乎标题),每个步骤不但可以是一个function,还可以引用另一个流程,这个被引用的流程就叫子流程。先看个简单的例子:

flowJS({    init:function(){        this.setNext('步骤A').setNext('步骤B').setNext('步骤C');        this.next();
    },    '步骤A':function(){        this.next();
    },    '步骤B':{    init:function(){        this.setNext('子步骤B1').setNext('子步骤B2').setNext('子步骤B3');        this.next();
        },        '子步骤B1':function(){        this.next();
        },        '子步骤B2':function(){            this.next();