@react_js

Страница 4859 из 5115
Tyu
22.09.2018
13:46:30
И в чём была ошибка?
Ты там ссылку какую-то прикрепил, я подумал что это не мне ответ.

Alexey
22.09.2018
14:06:32
des
22.09.2018
14:07:33
Сначала контейнер собрать надо

Alexey
22.09.2018
14:08:06
ты шутишь? там 5 строчек кода в докерфайле и 2 строчки в cmd

Google
Alexey
22.09.2018
14:08:18
хочешь сказать ты потратил меньше времени на установку линуксоида?)

des
22.09.2018
14:08:46
Убунта уже установлена была

Я помню как контейнер делается, но я об этом банально забыл

Точнее как вариант у меня это не всплыло в голове

Короче я Majestic поставил и счастлив

А расширение Jest в VSC так и не заработало. А Majestic это уже внешнее приложение и оно почему-то работает без проблем

akaSybe
22.09.2018
14:24:36
в первом случае будет ререндер, во втором - нет

если конечно ссылка на doSomething не подменяется где-то выше

Dmitriy
22.09.2018
14:26:22
Получается для не pure component не важно как ты прокидываешь функцию

толи ты создаешь новую каждый раз

то ли ссылку на старую

в оптимизайции разнца только в том что при создании каждый раз новой нужно время на создание

Google
akaSybe
22.09.2018
14:30:24
да, если не брать во внимание случай, когда ты сам определяешь shouldComponentUpdate в компоненте

Dmitriy
22.09.2018
14:31:26
ок, спасибо

akaSybe
22.09.2018
14:31:54
можешь ещё попробовать библиотечку why-did-you-update

она будет спамить в консоль когда компонент обновляется даже если пропсы не поменялись

Dmitriy
22.09.2018
14:32:41
прикольно, посмотрю. Но я уже вроде понимаю и так почему компонент обновляется

Dmitry
22.09.2018
14:32:42
why-prod-vjebaniy ?

akaSybe
22.09.2018
14:33:41
этим обычно саппорт вроде занимается)

Dmitriy
22.09.2018
14:34:11
можешь ещё попробовать библиотечку why-did-you-update
Но там вроде есть нюанс, вызов render() компонента и DOM update разные вещи

akaSybe
22.09.2018
14:35:09
да, в рендер методе строится виртуальный дом, потом сравнивается с предыдущим и потом разница изменяется в реальном доме

но даже если разница будет минимальна, лучше вообще избегать ненужного построения виртуального дома

Dmitriy
22.09.2018
14:36:39
да, в рендер методе строится виртуальный дом, потом сравнивается с предыдущим и потом разница изменяется в реальном доме
Почему же тогда так строго относяться к прокидыванию в пропсы каждый раз нового обьекта. Неужели для JS так тяжело создать новый.

akaSybe
22.09.2018
14:37:01
дело не в том что дорого создавать объект

Dmitriy
22.09.2018
14:37:11
а в чем?

akaSybe
22.09.2018
14:37:28
а в том что прокидывая новый объект в пропсы у тебя каждый раз будет ререндер компонента

Сергей
22.09.2018
14:38:02
Катастрофа

Dmitriy
22.09.2018
14:38:09
а в том что прокидывая новый объект в пропсы у тебя каждый раз будет ререндер компонента
а в том что прокидывая новый объект в пропсы у тебя каждый раз будет ререндер компонента => только если он PURE!

Сергей
22.09.2018
14:38:20
Максимально ужасно

akaSybe
22.09.2018
14:39:35
а в том что прокидывая новый объект в пропсы у тебя каждый раз будет ререндер компонента => только если он PURE!
нет, у обычного Component даже если те же самые пропсы приходят всё равно идёт ререндер, потому что у него дефолтная реализация shouldComponentUpdate просто возвращает true

Google
Dmitriy
22.09.2018
14:40:03
верно. Немного не так понял меня
Я имею введу что если обычному прокидывать то всеравно новый или ссылку

Я имею введу что если обычному прокидывать то всеравно новый или ссылку
Короче когда прокидываю пропсы я смотрю компонент pure или обычный. Если обычный то я буду кидать каждый раз новый. Так ведь удобно

akaSybe
22.09.2018
14:44:00
чем это удобнее?

Dmitriy
22.09.2018
14:46:27
чем это удобнее?
допусти тем что у тебя в классе сверху функция типа handleIncrease(){ this.props.handleIncreae(1); } а снизу <Button onClick={this.handleIncrease}

допусти тем что у тебя в классе сверху функция типа handleIncrease(){ this.props.handleIncreae(1); } а снизу <Button onClick={this.handleIncrease}
А если каждый раз новую то можно сделать просто <Button onClick={() => this.props.increase(1)} />

akaSybe
22.09.2018
14:48:49
ну то что меньше строк кода, это да

но если скажем у тебя increase не требует параметров то можно просто писать <Button onClick={this.props.increase} />

Dmitriy
22.09.2018
14:49:31
ну кода меньше и ты сразу видишь что происходит. Не поднимаешся вверх

ну то что меньше строк кода, это да
Получается что shouldComponentUpdate нужно редко использовать. Только в случае если выполняется тяжелая js function. Во всех других слаучая всеравно DOM сравнивается.

S̶m̶°̶O̶k̶™?✔️
22.09.2018
14:55:08
Зависит от ситуации

akaSybe
22.09.2018
14:55:28
ты начнёшь использовать shouldComponentUpdate в любом более-менее сложном проекте, когда у тебя начнет падать фпс)))

Dmitriy
22.09.2018
14:55:44
у меня большой на работе)

и было такое что падал фпс на маке))

akaSybe
22.09.2018
14:56:39
вот потом через профайлер посмотришь что тормозит

и будешь оптимизировать все)

Admin
ERROR: S client not available

Dmitriy
22.09.2018
14:57:04
профайлер это что?)

та библиотека?

Google
akaSybe
22.09.2018
14:59:01
в Chrome DevTools

https://reactjs.org/docs/optimizing-performance.html#profiling-components-with-the-chrome-performance-tab

Dmitriy
22.09.2018
14:59:49
ааа высмысле hightlight updates

он кстати показывает ререндер а не DOM updates

а стандартый хромовский hightlight updates показывает DOM updates

ааа ты про perfomance в целом)

понял

Таймураз
22.09.2018
15:06:00
@sergeysova а вдруг за реакт топит?)

Сергей
22.09.2018
15:06:26
я ошибаюсь в <10% случаев

есличо разбаним

Таймураз
22.09.2018
15:06:51
я ошибаюсь в <10% случаев
Да я ж шучу) С вюшниками так и надо

Сергей
22.09.2018
15:06:55
ахах)

Abu
22.09.2018
15:13:50
Мои глаза ? Как это вообще читать

Umid
22.09.2018
15:48:14
Катастрофа
Эмм, а в чем именно проблема? Нельзя передавать такое количество параметров?

Kevin
22.09.2018
15:49:21
Стиль кода

Umid
22.09.2018
15:50:29
Стиль кода
Где можно посмотреть, как следует это делать?

Kevin
22.09.2018
16:22:50
Отрепортил как спам

Artem
22.09.2018
16:23:03
технологичный коммунизм?

Google
Kevin
22.09.2018
16:23:28
Коммунист хуже пидораса

Nikolay
22.09.2018
16:23:49
Иисус всех вас ёбнет скоро, пидары :)

Artem
22.09.2018
16:24:22
Иисус всех вас ёбнет скоро, пидары :)
причем атеизм до технологичного коммунизма?

Amonra
22.09.2018
16:24:26
Мы настоящие натуралы атеисты

Страница 4859 из 5115