
Семен
26.09.2016
09:56:16
Ребят, вопрос такой, какие сущности можно напрямую коннетить к стору редакса? Я так понимаю, что только контейнеры, либо умные компоненты?

Aldar
26.09.2016
09:57:10

from
26.09.2016
09:58:03

Семен
26.09.2016
09:59:53
Вот вопрос, как это на производительность и семантику влияет, может я заблуждаюсь

Google

Семен
26.09.2016
10:00:38
Я при инициализации апы тяну словари с сервака и храню в сторе, для сопоставления айдишников и т.п мне части приходится обращаться туда
А тянуть словари из верхней компоненты вниз постоянно дурность, я считаю

Ches
26.09.2016
10:05:33
подскажите в чем фишка выносить разметку за компонент?

Сашка
26.09.2016
10:09:40
Гайз, а кто-нить юзает ООП на проектах? Если да, можно узнать, как оно применяется для разработки на реакте. И вообще есть ли смысл?
Я, вот, смысла вообще не вижу. Ни разу н было такого случая, чтобы ООП могло помочь
Но может я один такой?

Ilya
26.09.2016
10:10:51
Что значит ООП в твоей трактовке?

Алексей
26.09.2016
10:11:01

Сашка
26.09.2016
10:11:45
Наследование. То что в js и называется ООП)

Vladimir
26.09.2016
10:12:02
нет, наследование в реакте должно быть только от базовых классов
типа React.Component

Алексей
26.09.2016
10:12:26

Vladimir
26.09.2016
10:12:28
остальное - на композиции

Google

Ilya
26.09.2016
10:12:46

Сашка
26.09.2016
10:13:04

Vladimir
26.09.2016
10:13:09
потому что наследование - опасная хрень в условиях кучи лайфцайкл-методов

Сашка
26.09.2016
10:14:34

Алексей
26.09.2016
10:15:15

Алексей
26.09.2016
10:15:33

Vladimir
26.09.2016
10:16:27
ну вообще тема "наследование вс композиция" - очень спороемкая

Сашка
26.09.2016
10:17:51
Да вполне себе аргумент, по моему. Таки хрен знает, что у тебя произойдет на willRecieveProps. Передадутся параметры к методу одного типа, когда ожидаются другие. Потом это сложно отследить

Алексей
26.09.2016
10:18:20

Vladimir
26.09.2016
10:18:26
с какими пропсами вызовется супер
например

Сашка
26.09.2016
10:18:37
Хотя этот аргумент можно применить к ооп вообще, так что забираю свои слова

Vladimir
26.09.2016
10:18:52
дык вообще наследование - отстой:)
и ооп:)

Алексей
26.09.2016
10:19:18
Если не указал в конкретном классе метод, ищется в его прототипе
Тут дорога в одну сторону

Vladimir
26.09.2016
10:19:40
вообще, наследование - антипаттерн

Vladimir
26.09.2016
10:19:43
оставлю это здесь https://www.youtube.com/watch?v=wfMtDGfHWpA

Алексей
26.09.2016
10:20:04

Алексей
26.09.2016
10:20:24

Google

Vladimir
26.09.2016
10:20:29

Vladimir
26.09.2016
10:20:36

Vladimir
26.09.2016
10:20:49
LOL
мета лол, потому что наследование правда больно
вот ещё
https://medium.com/@cscalfani/goodbye-object-oriented-programming-a59cda4c0e53#.4qef3glib

Vladimir
26.09.2016
10:22:10
скажем так, в моем универе мсье бертранд мейер затирал, что множественное наследование это прям топ. Но на аргумент "тут просто-то наследование усложняет архитектуру, а вы множественное предлагаете" - ответа не было

Алексей
26.09.2016
10:22:40
А если у меня два компонента, которые делают одно и то же, но имеют разную верстку, что тогда делать? Дублировать методы для каждого? Или один унаследовать от другого и просто поменять рендер?

Алексей
26.09.2016
10:22:54

Vladimir
26.09.2016
10:23:21
наследование с умом применять надо

Алексей
26.09.2016
10:23:26
Я наследование в таких случаях использую

Алексей
26.09.2016
10:23:57

Kreizo
26.09.2016
10:24:53
https://github.com/kreiz0/godota/blob/master/src/components/Search.js

Vladimir
26.09.2016
10:24:56

Kreizo
26.09.2016
10:25:05
подскажите как фильтровать в редаксе
выходит всегда дизпатчится новый объект
и старое состояние не реально вернуть

Ilya
26.09.2016
10:31:31
необратимые мутации?=)

Kreizo
26.09.2016
10:32:24
может в редаксе есть какие то настройки ?
что бы все тот же объект фильтровало

Ilya
26.09.2016
10:32:55
Ты экзамплы редакса читал?

Сергей
26.09.2016
10:33:11

Google

Kreizo
26.09.2016
10:33:25

Сергей
26.09.2016
10:33:26
или написать общий класс для обоих компонентов

Алексей
26.09.2016
10:34:25

Kreizo
26.09.2016
10:35:27
у меня фильтрует
просто баг
если например ввести единицу будет пустой список

Алексей
26.09.2016
10:35:53

Kreizo
26.09.2016
10:35:57
и если ее удалить он будет снова пустой

Dmitry
26.09.2016
10:36:27
А ты диспатчишь, когда пустое значение?

Ilya
26.09.2016
10:36:27

Kreizo
26.09.2016
10:36:40
https://github.com/kreiz0/godota/blob/master/src/components/Search.js

Dmitry
26.09.2016
10:39:15
Изначально ты все выводишь, а при change и получении пустого значения у тебя компонент ждет, что названия будут тоже пустые

Kreizo
26.09.2016
10:40:28
у меня компоненты между собой взаимодействуют по средством этого редакса
я понимаю что оно дизатчит пустой значание
но не знаю как это исправить
каким инструментом

Mikhail
26.09.2016
10:43:34
А через когда после moscowjs выдосы обычно появляются?

Ches
26.09.2016
10:59:59
сохранять ее в переменной, и потом в компонент рендерить эту переменную

Eldar
26.09.2016
11:02:50
@jaybekster насчет moscowjs хз, но обычно месяц-полтора, много времени уходит на монтирование, особенно если записывали/монтировали не профессиональные операторы

Ches
26.09.2016
11:07:39
нет заглючил) хотел спросить для чего выносить разметку за компонент?

Google

Ches
26.09.2016
11:07:43
сохранять ее в переменной, и потом в компонент рендерить эту переменную

Eldar
26.09.2016
11:11:52
Потому что при перерендере создавать новый объект через React.createElement дороже, чем если закешировать такой статичный элемент в переменной.
Плагин для бабеля - http://babeljs.io/docs/plugins/transform-react-constant-elements/ делает это за тебя
Но это работает только для статичных кусков разметки

Ches
26.09.2016
11:21:48
а если он динамичный?

Eldar
26.09.2016
11:24:51
Ну в принципе это имеет смысл если в какой-то момент времени эта штука не так динамична, всмысле например у тебя есть 100 элементов, и для 50 у тебя кусок разметки один, а для 50 другой. Тогда имеет смысл закешировать такой кусок разметки руками (плагин не осилит) по какому-нибудь признаку и выводить. Но! Для более динамичной разметки смысла нет

Ches
26.09.2016
11:29:27
спасибо)

Eldar
26.09.2016
11:30:31
Ну и вообще, не упарывайся за рендеринг производительность, пока у тебя все это отрабатывает меньше чем 500ms

Dreamerinnoise
26.09.2016
13:12:55
Кто jest пользовал, хорошая?

Vladimir
26.09.2016
14:07:27

Andrey
26.09.2016
14:08:36

Gregory
26.09.2016
14:13:59

Alexander
26.09.2016
14:31:41
Слышал много хвалебных отзывов

Сергей
26.09.2016
14:39:44
Расскажите, кто как тестирует React приложение

Alexander
26.09.2016
14:44:41
jasmine + enzyme в рельсах, пока только начинаем

Vladimir
26.09.2016
14:45:10
enzyme + mocha

Bogdan
26.09.2016
14:45:21
Ребята, никто не знает как в сафари-инспекторе проинспектировать сам инспектор? Или он не на js написан? Суть в чем - в сафари есть крутая фича подсветки неиспользуемого кода и я хочу просто скопировать и удалить этот неиспользуемый код чтобы разобраться в одной сложной библиотеке но к сожалению через ctrl+c этот код копируется без стилей

Сергей
26.09.2016
14:46:06
не
мне интересно что именно тестируете, верстку и логику
может кто-нибудь пример показать?

Alexander
26.09.2016
14:46:50
Мы собираемся просто smoke тесты для начала делать, чтобы понимать, что комплексные компоненты не отваливаются при рефакторинге