//职责链模式是链式操作是再链子上完成的操作 /*class action { constructor(name) { this.name=name; this.nextAction=null; } setNextAction(action) { this.nextAction=action; } handle() { console.log(`${this.name}审批`); //如果下一位不是不是null就连续调用handle函数啦 if(this.nextAction!=null) { this.nextAction.handle(); } } } let a1=new action("组长"); let a2=new action("经理"); let a3=new action("总监"); //然后是组长把文件交给下一位审批(经理) a1.setNextAction(a2); a2.setNextAction(a3); //这上面是要交流谁谁谁审批的啊 a1.handle();
核心:顾名思义,就是一步操作可能分位多个职责角色来完成,把这些角色都分开,然后用一个链串起来。这样就将请求者和处理者、包括多个处理者之间进行了分离。 例如你请假,组长、经理、和总监最终肯定会有一个人来绝对你能否请假成功。 链式结构为什么这么说? 因为你不觉得他像条链子一样吗