Size: a a a

2020 October 07

DG

Dmitry Guzeev in pro.js
т.е. функция #1 тут возвращает новую функцию
источник

ЕГ

Евгений Гурьев... in pro.js
Dmitry Guzeev
т.е. функция #1 тут возвращает новую функцию
благодарю! А не могли бы наглядный практичный пример привести?
источник

DG

Dmitry Guzeev in pro.js
например конструктор изменения состояния формы

const setFormStateField = (fieldName) => {
 return (value) => {
   // делаем что-то для изменения каждого поля
   form[fieldName] = value;
 }
}
источник

DG

Dmitry Guzeev in pro.js
вызываем вот так:
const changeUsername = setFormStateField("username")
...
changeUsername("vasya")
источник

AS

Andrew Smith in pro.js
Dmitry Guzeev
Тут речь была именно о "менеджменте" глобального состояния. Для реакта придумали кучу библиотек (по типу redux), которые выполняют эту задачу, т.к. реакт изначально задумывался как основа для сложных динамических приложений с кучей состояния. Такие библиотеки в основном нужны для шэринга информацией между разными подсистемами компонентов. К примеру, если у тебя есть хедер, в котором указано твое имя, а ты бы хотел, чтобы оно менялось при изменении имени в настройках пользователя, то можно было б привязать оба компонента к общему "хранилищу" (типа redux), которое бы оповещало нужные компоненты (хедер и страница настроек) об изменении информации пользователя.
Ага... Понял.
И все это дело ре-рендерится без принудительного рендера? (Ре-Рендера всей страницы) и из редакса все компоненты прокидываются как обычные пропсы в разметку?
источник

ЕГ

Евгений Гурьев... in pro.js
Dmitry Guzeev
например конструктор изменения состояния формы

const setFormStateField = (fieldName) => {
 return (value) => {
   // делаем что-то для изменения каждого поля
   form[fieldName] = value;
 }
}
Это то есть про замыкание?
источник

DG

Dmitry Guzeev in pro.js
Евгений Гурьев
Это то есть про замыкание?
да
источник

ЕГ

Евгений Гурьев... in pro.js
Эх, спасибо, пойду вкуривать)))
источник

DG

Dmitry Guzeev in pro.js
Andrew Smith
Ага... Понял.
И все это дело ре-рендерится без принудительного рендера? (Ре-Рендера всей страницы) и из редакса все компоненты прокидываются как обычные пропсы в разметку?
зависит от того, используется ли мемоизация (React.memo или shouldComponentUpdate)
источник

AS

Andrew Smith in pro.js
Dmitry Guzeev
например конструктор изменения состояния формы

const setFormStateField = (fieldName) => {
 return (value) => {
   // делаем что-то для изменения каждого поля
   form[fieldName] = value;
 }
}
Т.е. редакс, как я понял мини бд внутри кода?
источник

DG

Dmitry Guzeev in pro.js
Andrew Smith
Т.е. редакс, как я понял мини бд внутри кода?
да, с иммутабельным состоянием (это уже о ФП читать надо), а почему иммутабельность помогает  - в доках redux
источник

AS

Andrew Smith in pro.js
Dmitry Guzeev
да, с иммутабельным состоянием (это уже о ФП читать надо), а почему иммутабельность помогает  - в доках redux
ФП это что?
источник

DG

Dmitry Guzeev in pro.js
Функциональное Программирование/Парадигма
источник

AS

Andrew Smith in pro.js
Dmitry Guzeev
Функциональное Программирование/Парадигма
А, понял)
источник

AS

Andrew Smith in pro.js
Dmitry Guzeev
да, с иммутабельным состоянием (это уже о ФП читать надо), а почему иммутабельность помогает  - в доках redux
Понял все. Спасибо огромное за разъяснение всего, надеюсь не отняло много времени.
Завтра попробую редакс прикрутить и поработать с ним. Видимо очень и очень полезная штука.
источник

AS

Andrew Smith in pro.js
Dmitry Guzeev
Функциональное Программирование/Парадигма
А с сео потом действительно большие проблемы могут быть, да?
источник

В

Виктория in pro.js
Andrew Smith
Покажи мне файл Header.jsx
источник

AS

Andrew Smith in pro.js
Сейчас скину)
источник

Dj Лимончик )... in pro.js
Andrew Smith
А с сео потом действительно большие проблемы могут быть, да?
сео вообще нет на реакте, некст джи эс надо или чтото типо этого, можно вручную ещё сделать сср
источник

AS

Andrew Smith in pro.js
Dj Лимончик )
сео вообще нет на реакте, некст джи эс надо или чтото типо этого, можно вручную ещё сделать сср
я понял. Спасибо)
источник