JS 中方法的注入

原创
2017/05/26 19:19
阅读数 575

JS 中方法的修饰(注入写法)。

假如我有一个函数,执行某功能,程序中我开了一个口子,使用者可以传递新方法来执行这个功能。

那么现在就有2种情况:1. 使用者完全用他提供的方法替代我的。2.使用者依然使用我的,在我之后再使用它的。

 

封装一个函数:

function inject(processor, fn) {
        return (payload) => {
            return processor.call(new Context(payload), payload, getFn(fn, payload))
        }
}

使用的时候 :

假设我原来的方法是 fun, 接收的参数是一个

// fun是旧的方法
fun_new = function(payload, fun){
  // 如果需要执行fun,那么就调用fun,如果不需要,就忽略第二个参数
}

fun = inject(fun_new, fn);


这样的写法,是否使用原方法完全由注入的方法决定。

展开阅读全文
加载中

作者的其它热门文章

打赏
0
1 收藏
分享
打赏
0 评论
1 收藏
0
分享
返回顶部
顶部