Size: a a a

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

2020 December 28

И

Иван in React — русскоговорящее сообщество
Reducer
источник

СМ

Стас М in React — русскоговорящее сообщество
Иван
А дальше?
минуту
источник

СМ

Стас М in React — русскоговорящее сообщество
источник

И

Иван in React — русскоговорящее сообщество
Мутируешь
источник

И

Иван in React — русскоговорящее сообщество
Иван
Что-то в коде не так. Ставлю сотку, что мутируешь
🤷‍♂️ сотка моя
источник

СМ

Стас М in React — русскоговорящее сообщество
Иван
Мутируешь
В смысле? Что значит мутирую? )
источник

СМ

Стас М in React — русскоговорящее сообщество
Что не так?
источник

И

Иван in React — русскоговорящее сообщество
Зачем тебе, кстати, shallowEqual?
источник

СМ

Стас М in React — русскоговорящее сообщество
Иван
Зачем тебе, кстати, shallowEqual?
так это же функция сравнения. Я думал, это она задаёт сравнение прошлого результата useSelector и нового результата для перерисовки. Не так?
источник

И

Иван in React — русскоговорящее сообщество
Стас М
В смысле? Что значит мутирую? )
Значит обновление стора не иммутабельное. Гугли immutable redux
источник

И

Иван in React — русскоговорящее сообщество
Стас М
так это же функция сравнения. Я думал, это она задаёт сравнение прошлого результата useSelector и нового результата для перерисовки. Не так?
Она нужна, когда возвращаешь несколько разных кусков стора в одном селекторе в виде ссылочной структуры. Когда просто берёшь кусок стейта — не нужна. Не уверен, приведёт ли к ошибке или нет — никогда её не юзал
источник

АК

Алексей Коршунов... in React — русскоговорящее сообщество
Key в div добавь
источник

СМ

Стас М in React — русскоговорящее сообщество
Иван
Значит обновление стора не иммутабельное. Гугли immutable redux
ну, с иммутабельностью, вроде понятно.
так я же, вроде беру в reducer копию state, преобразую копию. Возвращаю. Разве нет?
Всё, вроде, соблюдено. Или нет?
источник

И

Иван in React — русскоговорящее сообщество
Стас М
ну, с иммутабельностью, вроде понятно.
так я же, вроде беру в reducer копию state, преобразую копию. Возвращаю. Разве нет?
Всё, вроде, соблюдено. Или нет?
Данные внутри массива изменились. Ссылка на массив не изменилась. Это мутация
источник

И

Иван in React — русскоговорящее сообщество
Стас М
ну, с иммутабельностью, вроде понятно.
так я же, вроде беру в reducer копию state, преобразую копию. Возвращаю. Разве нет?
Всё, вроде, соблюдено. Или нет?
Для твоей задачи есть .concat
источник

СМ

Стас М in React — русскоговорящее сообщество
Иван
Данные внутри массива изменились. Ссылка на массив не изменилась. Это мутация
так оно, по идее, так и должно быть внутри reducer. Разве нет?
Мы взяли скопировали state, там провели изменения,  вернули обратно данные в скопированном объекте.
источник

СМ

Стас М in React — русскоговорящее сообщество
Иван
Для твоей задачи есть .concat
concat???
В чём разница push и concat? Одно и то же, по-моему. Разве нет?
источник

SK

Stanislav Kalinovski... in React — русскоговорящее сообщество
Подскажите пожалуйста, как правильно переписать вот такой код для функционального компонента ?

Нужно что б в зависимости от приходящего ивента, для каждого e.target.name задавался свой setState (в данном случае setName, setEmail и .д.)
источник

SK

Stanislav Kalinovski... in React — русскоговорящее сообщество
handleInput = (e) => {
   this.setState({ [e.target.name] : e.target.value});
};
источник

RG

Rodion Grigorenko in React — русскоговорящее сообщество
Stanislav Kalinovskiy
Подскажите пожалуйста, как правильно переписать вот такой код для функционального компонента ?

Нужно что б в зависимости от приходящего ивента, для каждого e.target.name задавался свой setState (в данном случае setName, setEmail и .д.)
никак. Можешь значения всех интпутов запихнуть в один useState() как свойства объекта. И тогда можешь юзать этот же подход
источник