Вопрос №55709 от пользователя Дмитрий Бердников в уроке «Асинхронные действия», курс «JS: Redux (React)»

Дмитрий Бердников

Здравствуйте! Подскажите пожалуйста

fetchtasks вызывается, чтобы явно показать вызов функции? store.dispatch(fetchTasks());

Можно же переделать логику и передавать функцию без вызова функции, но тогда это будет менее понятно? store.dispatch(fetchTasks);

4 0

Станислав Дзисяк

Приветствую, Дмитрий!

fetchTasks - это функция, которая собственно создаёт действие. И чтобы выполнить конкретное действие, производится вызов этой функции, которая в свою очередь возвращает объект действия передаваемый в dispatch. Код в принципе можно переписать так, чтобы объект действия сохранялся в константе и её передавать в dispatch(), но какой в этом смысл? Логика ведь только усложнится и кода станет больше.

0

Дмитрий Бердников

Спасибо за ответ! Но мне кажется мы говорим про разное.

В ревью 38 строка в файле src/actions/index.js для примера убрал внешнюю функцию

Так как мы сами не вызываем функцию и не передаем ей аргументы, то мы можем не использовать функцию обертку, которая возвращает другую функцию.

Поэтому я спросил, если мы в store.dispatch(fetchTasks) не вызываем функцию это менее понятно и считается плохим тонном? То есть лучше всегда делать дополнительную функцию обертку, даже если мы не передаем ей аргументов?

0

Станислав Дзисяк

Дмитрий, да, вероятно я вначале не верно понял ваш вопрос. Отвечу на него. В решении можно и не оборачивать функцию в другую функцию, если не требуется передавать никаких параметров. В данном случае это сделано для однообразия, чтобы не держать в голове, что один экшен нужно вызывать так, а другой иначе. Кроме того такой подход описывается в документации redux-thunk.

0

Дмитрий Бердников

Станислав Дзисяк, теперь понял, спасибо

0

Используйте Хекслет по максимуму!

  • Задавайте вопросы по уроку
  • Проверяйте знания в квизах
  • Проходите практику прямо в браузере
  • Отслеживайте свой прогресс

Зарегистрируйтесь или войдите в свой аккаунт

Даю согласие на обработку персональных данных, соглашаюсь с «Политикой конфиденциальности» и «Условиями оказания услуг»

Рекомендуемые программы

С нуля до разработчика. Возвращаем деньги, если не удалось найти работу.

Иконка программы Фронтенд-разработчик
Профессия
Разработка фронтенд-компонентов веб-приложений
25 мая 10 месяцев
Иконка программы Python-разработчик
Профессия
Разработка веб-приложений на Django
25 мая 10 месяцев
Иконка программы PHP-разработчик
Профессия
Разработка веб-приложений на Laravel
25 мая 10 месяцев
Иконка программы Node.js-разработчик
Профессия
Разработка бэкенд-компонентов веб-приложений
25 мая 10 месяцев
Иконка программы Fullstack-разработчик
Профессия
Новый
Разработка фронтенд и бэкенд компонентов веб-приложений
25 мая 16 месяцев
Иконка программы Верстальщик
Профессия
Вёрстка с использованием последних стандартов CSS
в любое время 5 месяцев
Иконка программы Java-разработчик
Профессия
Разработка приложений на языке Java
25 мая 10 месяцев
Иконка программы Разработчик на Ruby on Rails
Профессия
Создает веб-приложения со скоростью света
25 мая 5 месяцев