Передать аргумент в обратный вызов lodash.throttle

1

Я хочу передать component someFuc но когда я запускаю someFuc, его аргумент является событием. Что я делаю неправильно?

window.addEventListener("resize", throttle(someFuc, 66, {'trailing': false}, component), false);

Теги:
lodash

1 ответ

2

_.throttle фактически не принимает четыре аргумента. Только три. Поэтому ваш компонент игнорируется. Если вы хотите передать его в качестве аргумента someFuc, вы можете использовать функцию lodash _.partial или использовать анонимную функцию. Вот код для обоих:

window.addEventListener("resize", _.throttle(_.partial(someFuc, component), 66, {trailing: false}), false);

ИЛИ ЖЕ

window.addEventListener("resize", _.throttle(() => sumeFuc(component), 66, {trailing: false}), false)
  • 0
    Так что документы не так? lodash.com/docs/#throttle "Функция вызывается с последними аргументами, предоставленными функции регулирования ."
  • 2
    «Функция вызывается с последними аргументами, предоставленными дроссельной функции» означает, что функция, которую создает throttle вызывается с последним набором аргументов, которые она получила. Т.е., если вы вызовете удушенную функцию дважды за короткое время, базовая функция будет вызываться только один раз с аргументами из второго вызова (последний в этом примере).
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню