自定义事件添加的时候

来源:8-10 event(9)

旋涡鸣人_

2019-02-14

function createFnInvoker (fns) {
  function invoker () {
    var arguments$1 = arguments;

    var fns = invoker.fns;
    if (Array.isArray(fns)) {
      var cloned = fns.slice();
      for (var i = 0; i < cloned.length; i++) {
        cloned[i].apply(null, arguments$1);
      }
    } else {
      // return handler return value for single handlers
      return fns.apply(null, arguments)
    }
  }
  invoker.fns = fns;
  return invoker
}

老师 fns 什么情况下 才能出现数组?

写回答

1回答

ustbhuangyi

2019-02-14

对于同一个事件,可能会注册多个侦听器,也就是多个回调函数,这种情况 fns 就是数组

0
3
旋涡鸣人_
非常感谢!
2019-02-14
共3条回复

Vue.js 源码深入解析 深入理解Vue实现原理

全方位讲解 Vue.js 源码,进阶高级工程师

4984 学习 · 1037 问题

查看课程