а как вызвать хук в другом компоненте с тем же параметром? лучше хранить этот параметр в редаксе? если да, то как его туда занести? по старому способу или есть какой-то новый и более элегантный?
Спасибо! Месяц назад игрался с этой либой. Возник вопрос. Если к данным нужен доступ в двух разных компонентах то нужно эти данные доставать из стора с места в которое эта либа их ложит или положить в стор самостоятельно?
У меня почему-то не работает частичный поиск. Я делаю поиск по одному из полей объекта и ответ приходит только если введенное значение полностью совпадает со значением в поле объекта. Кто нибудь може подсказать из-за чего так может быть?
Привет, отличный разбор. У меня такой вопрос для обсуждения - если надо где то смаппить данные от сервера, то где лучше это делать ? К примеру, у меня есть запрос к БД за некими справочными значениями и отдельный запрос за сырыми данными, и где-то их нужно между собой скрестить. Раньше для этого использовал createSelector, теперь же, с RTK Query не могу понять где это делать. Пока просто создал отдельную функцию - некий адаптер, но такое решение правильным не выглядит. Как делаете вы в своей практике7
@@ecroFeGushKa Спасибо, есть над чем подумать. Правда, мне кажется, что это не такой уж частый случай. Сложности с мемоизацией post могут возникнуть в двух случаях: 1) ссылка на него не меняется, но меняется что-то внутри (и эти изменения нужно бы отобразить). Но обычно в редаксе при изменении свойств обновляют и ссылку на объект. В крайнем случае можно вместо shallow свое сравнение написать, но это уже такая же лишняя вещь, как и доставать post из редакса каждый раз, так что то на то и выходит (хотя передача id и получение post из редакса будет выглядеть, конечно, более традиционно). 2) ссылка меняется, но в компоненте поста используются только часть свойств, которые могут и не изменяться. Тогда да, лучше передавать id а в компоненте. Но просто доставать post из стора тоже не получится, придется делать свою мемоизацию через селектор, достающий конкретные свойства из post, используя тот же reselect. Возможно, я еще чего-то не учел. Но мне все-таки кажется, чаще проще передать сам объект, а пример в документации приведен для простоты понимания.
@@ecroFeGushKa а сразу при получении данных как в видео в transformResponse чем плохой вариант ? или в transformResponse только куски объекта вытягиваем и не делаем тяжелых операций типо map ?
Спасибо автору за проект! А если не секрет - то подскажите кто то как запустить этот проект - потому что то что в скриптах "dev": "vite", "build": "tsc && vite build", "serve": "vite preview" как бы я не понял как это запустить и как указать в import.meta.env.VITE_API_TOKEN, свой токен ? я так понимаю что запуск и указание своего токена нужно как то через vite делать ? если да то как ? я то что то я в документации vite потерялся и не смог разобраться.
ого, я прям чуть со стула не упал... спустя год новое видео появилось
живой остался?
Приятная неожиданность. Видос крутой.
ух ты, с возвращением!
Ухты! Вот это да!
Ну, что делать, придётся прикручиваать...
ооо, токо недавно встретил эту штуку,и все никак не было желания освоить, а теперь можно,спасибо!
блин я надеялся это исходник без наличия контента этого урока. То есть без изменений этой темы
но спасибо
Получается что теперь необходимости использования toolkit практически нет?
top!
а как вызвать хук в другом компоненте с тем же параметром? лучше хранить этот параметр в редаксе? если да, то как его туда занести? по старому способу или есть какой-то новый и более элегантный?
Видео пушка! А что за плагин на преобразование JSON в TS?
Спасибо! Месяц назад игрался с этой либой. Возник вопрос. Если к данным нужен доступ в двух разных компонентах то нужно эти данные доставать из стора с места в которое эта либа их ложит или положить в стор самостоятельно?
данные либа сама держит в кеше. хуком вызывай эти данные где надо и все
Надо дергать хук и там и там: в 1 случае произойдет загрузка данных, а в 2 случае данные возьмутся из кеша
У меня почему-то не работает частичный поиск. Я делаю поиск по одному из полей объекта и ответ приходит только если введенное значение полностью совпадает со значением в поле объекта.
Кто нибудь може подсказать из-за чего так может быть?
1:12 Разработана ребятами из Редакс - они и тулкит делали, и rtk query
Привет, отличный разбор. У меня такой вопрос для обсуждения - если надо где то смаппить данные от сервера, то где лучше это делать ? К примеру, у меня есть запрос к БД за некими справочными значениями и отдельный запрос за сырыми данными, и где-то их нужно между собой скрестить. Раньше для этого использовал createSelector, теперь же, с RTK Query не могу понять где это делать. Пока просто создал отдельную функцию - некий адаптер, но такое решение правильным не выглядит. Как делаете вы в своей практике7
У хуков есть параметр `selectFromResult`, я маплю данные в этой штуке)
redux-toolkit.js.org/rtk-query/usage/queries#selecting-data-from-a-query-result
@@ecroFeGushKa Не проще ли передавать пропсом не post.id, а сразу post ?
@@CJIu3eHb зависит от ситуации, в общем случае, лучше передавать в пропсах примитивные данные (строки числа), так проще мемоизировать
@@ecroFeGushKa Спасибо, есть над чем подумать. Правда, мне кажется, что это не такой уж частый случай. Сложности с мемоизацией post могут возникнуть в двух случаях:
1) ссылка на него не меняется, но меняется что-то внутри (и эти изменения нужно бы отобразить). Но обычно в редаксе при изменении свойств обновляют и ссылку на объект. В крайнем случае можно вместо shallow свое сравнение написать, но это уже такая же лишняя вещь, как и доставать post из редакса каждый раз, так что то на то и выходит (хотя передача id и получение post из редакса будет выглядеть, конечно, более традиционно).
2) ссылка меняется, но в компоненте поста используются только часть свойств, которые могут и не изменяться. Тогда да, лучше передавать id а в компоненте. Но просто доставать post из стора тоже не получится, придется делать свою мемоизацию через селектор, достающий конкретные свойства из post, используя тот же reselect.
Возможно, я еще чего-то не учел. Но мне все-таки кажется, чаще проще передать сам объект, а пример в документации приведен для простоты понимания.
@@ecroFeGushKa а сразу при получении данных как в видео в transformResponse чем плохой вариант ? или в transformResponse только куски объекта вытягиваем и не делаем тяжелых операций типо map ?
Спасибо автору за проект!
А если не секрет - то подскажите кто то как запустить этот проект - потому что то что в скриптах
"dev": "vite",
"build": "tsc && vite build",
"serve": "vite preview"
как бы я не понял как это запустить и как указать в import.meta.env.VITE_API_TOKEN, свой токен ?
я так понимаю что запуск и указание своего токена нужно как то через vite делать ? если да то как ? я то что то я в документации vite потерялся и не смог разобраться.
Так что получается с этой штукой нам больше не нужен thunk и saga?
Всё так
Нет, Трамп, не настроишь меня против graphql.
Какой плагин ты использовал для получения типов из json?
JSON Lite - рекомендую