老师请问这里第三个参数为什么不能直接传end啊
const move = (el, { x = 0, y = 0 } = {}, end) => {
el.style.transform = `translate3d(${x}px, ${y}px, 0)`;
el.addEventListener(
'transitionend',
end();
},
false
);
};
28
收起
正在回答
2回答
同学你好,解答如下:
move方法的第三个参数要求是函数,所以我们要传入一个函数,因此写了一个箭头函数(参数要求):
将resolve方法写在箭头函数中,目的是执行箭头函数后,再调用resolve方法:
如果直接写resolve(),会立即调用resolve方法,并把resolve方法的返回值,作为move的第三个参数,二者含义不同、执行的时机也不同:
祝学习愉快!
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星