经测试,如此也防抖,有作用,6得很
// const once = throttle(() => {
// console.log('start======================');
// console.log('111111');
// console.log('end========================');
// }, 1000);
const generationToHotInfo = throttle(
() => {
console.log('start======================');
console.log('我来了1次,好吗?');
console.log('end========================');
},
2000,
{
leading: false, // 在等待时间开始时不执行
trailing: true, // 在等待时间结束后执行
},
);
const ladashMoreData = () =>
_.throttle(fetchMoreUserWorks, 500, {trailing: false});
说明:如果在throttle函数中不传可选配置 {trailing:false},
则依然会调用两次,一次是在开始时调用,另一次是在限制时间结束后调用。
const generationToHotInfo = throttle(
() => {
console.log('start======================');
console.log('我来了1次,好吗?');
console.log('end========================');
},
2000,
{
leading: true,
trailing: false,
},
);
解释
_.throttle:将 handleClick 函数封装成一个被限制频率的版本,2000 表示间隔时间为 2000 毫秒(2 秒)。
leading: true:表示首次点击时会立即触发函数。
trailing: false:表示在间隔结束时不会再次触发函数。
https://www.jianshu.com/p/bacd268ef6ce