j s事件或函数只执行一次(once应用)

 

(vue源码中的once方法)


once(fn) {
  let called = false;
  return function() {
    if (!called) {
      called = true;
      fn.apply(this, arguments);
    }
  };
}
var callonce =  once(add)// once方法的返回值赋值给callonce
 
add(index) {//想执行一次的函数
  console.log(123, index);
}
 
// 点击事件只执行一次

onClick(index){

  callonce(index)

  }

 

posted @ 2020-11-30 16:16  Eddina  阅读(520)  评论(0编辑  收藏  举报