0.0.1 • Published 2 years ago
@yhfu/rx-tapable v0.0.1
使用 RxJS 实现 tapable 的功能
⚠️ 该库主要使用了
RxJS实现了tapable的能力,但是行为和原生tapable功能有些许的出入目前实现的功能从直觉上较符合我自己的预期,也是可能符合实际业务预期的实现。 如果对功能需要修改,直接添加或者修改操作符即可。
目前所实现的钩子
SeriesHook所有钩子从上到下依次执行,当所有的函数都执行完毕之后,会调用最后的回调函数。
WaterfallHook所有钩子从上到下以此执行,当所有的函数都执行完毕之后,会调用最后的回调函数。
ParallelHook所有钩子并行执行,当所有的函数都执行完毕之后,会调用最后的回调函数。
通用性说明
tap函数 仅支持两个参数,第一个参数为名称(暂时未被使用),第二个参数为需要执行的回调函数,该函数只能接收一个参数,在SeriesHook、ParallelHook中,该参数来源于调用tap的第一个参数,在WaterfallHook中,第一个注册的函数的参数来源于调用tap的第一个参数,之后的来源于上一个函数的返回值。call函数 仅支持两个参数,第一个参数为传递给tap回调函数的参数,第二个为所有tap回调函数执行完毕的回调。该函数在WaterfallHook中会接收到最后一个tap函数注册的返回值,SeriesHook、ParallelHook中暂时不接受参数值。
0.0.1
2 years ago