Size: a a a

React — русскоговорящее сообщество

2020 July 19

ei

export default - зло... in React — русскоговорящее сообщество
Dmitriy Shuleshov
А какие есть тонкости работы редакса с тс?
Свой диспатч который может принимать санки например?)
источник

ei

export default - зло... in React — русскоговорящее сообщество
В редаксе вообще полно приколов с тс и куча ручной работы
В эффекторах все и везде выводится само, достаточно лишь 1 раз указать тип
источник

DS

Dmitriy Shuleshov in React — русскоговорящее сообщество
export default - зло is the side effect
Свой диспатч который может принимать санки например?)
Ну блиин я плохо знаю редакс и еще хуже тс) Можно поконкретней?
источник

K

Krau5 in React — русскоговорящее сообщество
слева хром, справа firefox, что не так?
источник

ei

export default - зло... in React — русскоговорящее сообщество
Dmitriy Shuleshov
Ну блиин я плохо знаю редакс и еще хуже тс) Можно поконкретней?
В редаксе надо диспатчить экшны, чтобы изменять состояние (ну или не изменять, просто выполнять действия для которых например нужны данные из стора)
По дефолту ничего для работы с такими действиями и асинхронщиной не предоставляется, можно диспатчить только обьекты вида ({ type, любые_поля })
А санки, которые расширяют функционал, требуют диспатча функций, поэтому редакс начинает ругаться
Чтобы этого не было, надо писать свои обертки и так далее
источник

ei

export default - зло... in React — русскоговорящее сообщество
Можно сказать это результат кучи бесполезных абстракций)
источник

DS

Dmitriy Shuleshov in React — русскоговорящее сообщество
export default - зло is the side effect
В редаксе надо диспатчить экшны, чтобы изменять состояние (ну или не изменять, просто выполнять действия для которых например нужны данные из стора)
По дефолту ничего для работы с такими действиями и асинхронщиной не предоставляется, можно диспатчить только обьекты вида ({ type, любые_поля })
А санки, которые расширяют функционал, требуют диспатча функций, поэтому редакс начинает ругаться
Чтобы этого не было, надо писать свои обертки и так далее
А те проблема типизации вылазит именно с мидлварами? А как обстоят дела с сагами?
источник

ei

export default - зло... in React — русскоговорящее сообщество
Dmitriy Shuleshov
А те проблема типизации вылазит именно с мидлварами? А как обстоят дела с сагами?
Я не активный юзер саг, но наверное там проще, ведь саги просто слушают экшны, при этом диспатчить функции или что-то особенное не нужно
источник

Т

Тревожная куколка... in React — русскоговорящее сообщество
Krau5
слева хром, справа firefox, что не так?
Нулевое значение по разному формируется? (Второй параметр редьюса)
источник

K

Krau5 in React — русскоговорящее сообщество
Тревожная куколка
Нулевое значение по разному формируется? (Второй параметр редьюса)
именно в createStore ничего нет, я ставлю initialState в редюсере
источник

DS

Dmitriy Shuleshov in React — русскоговорящее сообщество
export default - зло is the side effect
Я не активный юзер саг, но наверное там проще, ведь саги просто слушают экшны, при этом диспатчить функции или что-то особенное не нужно
А че не активный? Мне так на глазок код с сагами показался в теории более декларативным
источник

D

Dmitriy in React — русскоговорящее сообщество
Dmitriy Shuleshov
А че не активный? Мне так на глазок код с сагами показался в теории более декларативным
Тулкит хорошо выводит типы
источник

ei

export default - зло... in React — русскоговорящее сообщество
Dmitriy Shuleshov
А че не активный? Мне так на глазок код с сагами показался в теории более декларативным
Новые проекты без редакса, старые с санками)
источник

DS

Dmitriy Shuleshov in React — русскоговорящее сообщество
Dmitriy
Тулкит хорошо выводит типы
А что именно  в тулките отвечает за типы? Там кстати санки?
источник

D

Dmitriy in React — русскоговорящее сообщество
Dmitriy Shuleshov
А что именно  в тулките отвечает за типы? Там кстати санки?
Готовые типы есть
источник

А

Александр in React — русскоговорящее сообщество
_Ryner' :: IO ❄️
А разве так нельзя сделать?
Ну как я понял - каждый раз после диспатча экшена будет вызываться useSelector и возвращать новый объект, следовательно постоянно будет ререндер, а если через useSelector возвращать простые типы, то они будут сравниваться по значению и если они не поменялись, то ререндера не будет. Если надо возвращать сложный тип из useSelector, то надо юзать reselect, т.к. он позволяет создать мемоизированный селектор, у которого уже не будет проблем со сравниванием двух одинаковых объектов находящихся в разных участках памяти.
источник

D

Dmitriy in React — русскоговорящее сообщество
Dmitriy Shuleshov
А что именно  в тулките отвечает за типы? Там кстати санки?
Но оно хорошо будет работать, если ты всё будешь на тулките писать, а не просто типы готовые возьмёшь
источник

DS

Dmitriy Shuleshov in React — русскоговорящее сообщество
источник

ei

export default - зло... in React — русскоговорящее сообщество
Тут просто все прекрасно))
источник

DS

Dmitriy Shuleshov in React — русскоговорящее сообщество
export default - зло is the side effect
Тут просто все прекрасно))
Ну лана в тестах можно и гамно писать)
источник