Генераторы в JavaScript 👉 th-cam.com/video/dV7KAx6-L-M/w-d-xo.html О middleware в Redux 👉 th-cam.com/video/Yfcxpon2oUU/w-d-xo.html Плейлист курса по Redux Saga 👉 th-cam.com/play/PLmfIBo6rTVR6jKRgpblTdzto9v-yWgqk-.html
Мне говорили надо так писать, чтобы не передавать промис) Ну Вы сами об этом в видео сказали) export const getUserPosts = async (userId) => { return await fetch( `ссылка` ).then((response) => response.json()) }
Одна из проблем саг, по-моему - это то, что "не найдешь концов" в более-менее среднем проекте. В редакторе не сможешь перейти на функцию - обработчик (т.к. вотчеры). В свое время пришлось отказаться от них (хотя по своей сути саги мне нравятся больше санков + с redux-toolkit вполне хорошо). Что скажешь на этот счет?
Думаю, что это в целом недостаток модели событий и подписок - где есть множество событий и обработчиков. Сложно дебажить. Спасет хорошая документация, как двигаются экшоны и где обрабатываются. И более прозрачные обработчики с помощью грамотного разделения вотчеров.
поскольку редакс однопоточный (тоесть в нем нельзя делать асинхронных операций: запросы на сервер) то нужен был способ как получать данные с сервера и хранить их в редакс стор, по началу запросы делались в самой компоненте после чего добавлялись в стор, сейчас же есть санк и сага. Под капотом санк проверяет на то полученный обьект (тот который должен попасть в стор) это обьект или функция (функция значит запрос за данными) и если это обьект, то добавляет его в стор, если функция то запускает. Сага же делает практически то же самое. В сага у тебя есть екшины как в редаксе только редакс их не ловит, их ловит сага и запускает свой соответсвуюущиий код, а именно делает запрос на сервер (например) после чего ждет ответ и запускает другой диспатч (например) за который уже отвечает редакс. Возможно я что-то не так понимаю или ошибся где-то, прошу помнить что пишу это под видосом "Что такое редакс сага" значит я сам еще не до конца понял что это :D
Генераторы в JavaScript 👉 th-cam.com/video/dV7KAx6-L-M/w-d-xo.html
О middleware в Redux 👉 th-cam.com/video/Yfcxpon2oUU/w-d-xo.html
Плейлист курса по Redux Saga 👉 th-cam.com/play/PLmfIBo6rTVR6jKRgpblTdzto9v-yWgqk-.html
Автор, вы большой молодец
Спасибо вам большое
Благодарю! Очень приятно!
Спасибо! Классный курс 👍🏻
Спасибо! хорошее изложение материала
Спасибо, ребят если вам зашло так поставьте лайк и подписку, хотя бы оставьте коммент.
Спасибо за поддержку!)
Мне говорили надо так писать, чтобы не передавать промис) Ну Вы сами об этом в видео сказали)
export const getUserPosts = async (userId) => {
return await fetch(
`ссылка`
).then((response) => response.json())
}
отличное видео, будет здорово если подготовите ролик о saga
redux-toolkit Успехов вашему каналу
Спасибо! Очень приятно!)
Одна из проблем саг, по-моему - это то, что "не найдешь концов" в более-менее среднем проекте. В редакторе не сможешь перейти на функцию - обработчик (т.к. вотчеры). В свое время пришлось отказаться от них (хотя по своей сути саги мне нравятся больше санков + с redux-toolkit вполне хорошо). Что скажешь на этот счет?
Думаю, что это в целом недостаток модели событий и подписок - где есть множество событий и обработчиков. Сложно дебажить. Спасет хорошая документация, как двигаются экшоны и где обрабатываются. И более прозрачные обработчики с помощью грамотного разделения вотчеров.
Отказались в пользу чего?
Я правильно понял, что saga используется вместо thunk ?
Да, в целом они решают одну задачу. Saga - более продвинутый для более сложных кейсов; thunk - для более простых.
поскольку редакс однопоточный (тоесть в нем нельзя делать асинхронных операций: запросы на сервер) то нужен был способ как получать данные с сервера и хранить их в редакс стор, по началу запросы делались в самой компоненте после чего добавлялись в стор, сейчас же есть санк и сага. Под капотом санк проверяет на то полученный обьект (тот который должен попасть в стор) это обьект или функция (функция значит запрос за данными) и если это обьект, то добавляет его в стор, если функция то запускает. Сага же делает практически то же самое. В сага у тебя есть екшины как в редаксе только редакс их не ловит, их ловит сага и запускает свой соответсвуюущиий код, а именно делает запрос на сервер (например) после чего ждет ответ и запускает другой диспатч (например) за который уже отвечает редакс. Возможно я что-то не так понимаю или ошибся где-то, прошу помнить что пишу это под видосом "Что такое редакс сага" значит я сам еще не до конца понял что это :D
@@KPACIBO_UA я сейчас реакт-квери использую и не парюсь :)
@@indigosay соре, ещё не дорос до такого)