Size: a a a

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

2020 December 24

AI

Arthur Irgashev in React — русскоговорящее сообщество
Dmitriy Shuleshov
Ты плаваешь в понимании разницы рендера и коммита в dom
Если что, я «поправился» выше
источник

И

Иван in React — русскоговорящее сообщество
Arthur Irgashev
Он не вырван. Он воспринят так, как сформулирован :)

Всё же реакт.мемо и тяжеловесность рендеров - немного о разном. Ты ведь сам ответил именно в контексте тяжеловесности
Рендер — это исполнение тела компонента. Если в тебе компонента перед ретёрном написан цикл на миллиард элементов (или просто сложные вычисления из пропсов), то вызывать эту функцию хочется пореже. Только когда нужно. И делается это с помощью react.memo

Вот эта тяжеловесность
источник

DS

Dmitriy Shuleshov in React — русскоговорящее сообщество
Arthur Irgashev
Если что, я «поправился» выше
Вывод сделан на основании фразы
"Всё же реакт.мемо и тяжеловесность рендеров - немного о разном."
источник

M

Mike in React — русскоговорящее сообщество
Иван
Рендер — это исполнение тела компонента. Если в тебе компонента перед ретёрном написан цикл на миллиард элементов (или просто сложные вычисления из пропсов), то вызывать эту функцию хочется пореже. Только когда нужно. И делается это с помощью react.memo

Вот эта тяжеловесность
сложные вычисления (и только их) я бы в useMemo завернул
источник

AI

Arthur Irgashev in React — русскоговорящее сообщество
Dmitriy Shuleshov
Вывод сделан на основании фразы
"Всё же реакт.мемо и тяжеловесность рендеров - немного о разном."
Так это действительно так. Ты уцепился за мемоизацию, когда вопрос был воще в отрыве от неё, и он звучал «как понять, что рендер тяжелый»
источник

AI

Arthur Irgashev in React — русскоговорящее сообщество
В общем, тут уже оффтоп пошёл
источник

AI

Arthur Irgashev in React — русскоговорящее сообщество
Arthur Irgashev
Так это действительно так. Ты уцепился за мемоизацию, когда вопрос был воще в отрыве от неё, и он звучал «как понять, что рендер тяжелый»
Видимо, просто разница восприятий
источник

И

Иван in React — русскоговорящее сообщество
Arthur Irgashev
Так это действительно так. Ты уцепился за мемоизацию, когда вопрос был воще в отрыве от неё, и он звучал «как понять, что рендер тяжелый»
Я тебе контекст стрелочкой показал
источник

DS

Dmitriy Shuleshov in React — русскоговорящее сообщество
Mike
сложные вычисления (и только их) я бы в useMemo завернул
Это в том случае когда у нас есть цикл на миллиард как дед написал, а мемоизация компонента актуальна когда сам этот компонент используется "миллиард раз" и содержит логику завязанную на приходящих пропсах
источник

DS

Dmitriy Shuleshov in React — русскоговорящее сообщество
Arthur Irgashev
В общем, тут уже оффтоп пошёл
Никакого оффтопа. Поясни свою фразу, пожалуйста
"Всё же реакт.мемо и тяжеловесность рендеров - немного о разном."
источник

И

Иван in React — русскоговорящее сообщество
Dmitriy Shuleshov
Это в том случае когда у нас есть цикл на миллиард как дед написал, а мемоизация компонента актуальна когда сам этот компонент используется "миллиард раз" и содержит логику завязанную на приходящих пропсах
Да, с примерами у меня сегодня так себе. С объяснениями, видимо, тоже(
источник

M

Mike in React — русскоговорящее сообщество
Dmitriy Shuleshov
Это в том случае когда у нас есть цикл на миллиард как дед написал, а мемоизация компонента актуальна когда сам этот компонент используется "миллиард раз" и содержит логику завязанную на приходящих пропсах
спасибо, стало яснее
источник

DS

Dmitriy Shuleshov in React — русскоговорящее сообщество
Mike
спасибо, стало яснее
Классический пример - таблица, ячейкой которой является компонент со сколько-нибудь существенной логикой обработки приходящих пропсов.
источник

В

Валерий in React — русскоговорящее сообщество
Всем привет, подскажите нормальный ли подход: есть презентационный компонент в котором есть обработчики кликов приходящие пропсами, есть юнит тест этого компонента, но по сути функции кликов всегда у этого компонента одинаковые (переход на страницу политики конфиденциальности), соответственно я делаю новый компонент  обёртку в котором указываю эти обработчики и использую уже эту обёртку везде в приложении, хотя мог сразу в первом компоненте объявить эти обработчики? Спасибо заранее
источник

RU

Roman Usherenko in React — русскоговорящее сообщество
Валерий
Всем привет, подскажите нормальный ли подход: есть презентационный компонент в котором есть обработчики кликов приходящие пропсами, есть юнит тест этого компонента, но по сути функции кликов всегда у этого компонента одинаковые (переход на страницу политики конфиденциальности), соответственно я делаю новый компонент  обёртку в котором указываю эти обработчики и использую уже эту обёртку везде в приложении, хотя мог сразу в первом компоненте объявить эти обработчики? Спасибо заранее
презентационные компоненты умерли. пиши как тебе удобно
источник

DS

Dmitriy Shuleshov in React — русскоговорящее сообщество
Валерий
Всем привет, подскажите нормальный ли подход: есть презентационный компонент в котором есть обработчики кликов приходящие пропсами, есть юнит тест этого компонента, но по сути функции кликов всегда у этого компонента одинаковые (переход на страницу политики конфиденциальности), соответственно я делаю новый компонент  обёртку в котором указываю эти обработчики и использую уже эту обёртку везде в приложении, хотя мог сразу в первом компоненте объявить эти обработчики? Спасибо заранее
Что проверяет юнит тест этого компонента? Корректность работы onClick реакта?
источник

В

Валерий in React — русскоговорящее сообщество
Полагаю да, что клик в глубине компонентов отработал и рефакторинг текста и стилей его не поломал
источник

AM

Anton Mazhuto in React — русскоговорящее сообщество
Ребят, привет, кто может подсказать что я делаю не так при раюоте с вебсокетами? Бэкенд разработчик дал эндпоинт, скачал либу react-use-websocket. Запускаю и статус сначала connecting потом closed, а в консоле ошибка WebSocket connection failed: Error in connection establishment: net::ERR_NAME_NOT_RESOLVED
источник

D

DL in React — русскоговорящее сообщество
Anton Mazhuto
Ребят, привет, кто может подсказать что я делаю не так при раюоте с вебсокетами? Бэкенд разработчик дал эндпоинт, скачал либу react-use-websocket. Запускаю и статус сначала connecting потом closed, а в консоле ошибка WebSocket connection failed: Error in connection establishment: net::ERR_NAME_NOT_RESOLVED
а если до этого сделать console.log(process.env.BASE_URL) - что будет?
источник

DS

Dmitriy Shuleshov in React — русскоговорящее сообщество
Валерий
Полагаю да, что клик в глубине компонентов отработал и рефакторинг текста и стилей его не поломал
Корректность онклик проверяет Тима реакта, не думаю что вам нужно перепроверять
источник