
Yaroslav
22.01.2017
21:07:15
В методе componentDidMount я вызываю функцию которая находится в actions, в ответ мне приходят данные в props. Вопрос: где лучше ими оперировать в дальнейшем?
Т.е я имею в виду в каком методе
У меня получилось их найти только в componentWillRecieveProps

Dmitry
22.01.2017
21:09:09
Ну да, в большинстве случаев, когда открываю код на фрилансе костыли и вижу ) На работе в ревью проще с этим

Google

Yaroslav
22.01.2017
21:09:45
Это нормальная практика? Просто от репозитория к репозиторию подходы в корне развеяться, а так как у меня опыта не так много, то и сравнить не получается

a
22.01.2017
21:10:31
потому что у тебя по-сути весь экран и становится этим активным элементом
а не только popup

Nikolay
22.01.2017
21:12:46

Dmitry
22.01.2017
21:13:06
Тем, что есть логически правильное решение с проверкой парентов. А решение с прозрачным дивом порождает возможные проблемы с версткой ( если будет что-то экзотическое ) и размазывает код по приложению еще больше.

a
22.01.2017
21:14:31
лол :-) ты хоть сам понял, что написал? ?

Nikolay
22.01.2017
21:15:38

Таймураз
22.01.2017
21:15:58

Nikolay
22.01.2017
21:16:08
ты же не можешь пихнуть этот див перед </body>

Timur
22.01.2017
21:16:29
Впихнуть невпихуемое

a
22.01.2017
21:16:49

Nikolay
22.01.2017
21:16:52
не ну впихнуть можно, но это тоже костыль

Google

a
22.01.2017
21:17:16
более того, так все и делают

Nikolay
22.01.2017
21:17:32
если у тебя 10 попапов
10 дивов?

a
22.01.2017
21:18:05
https://fckt.github.io/react-layer-stack/

Yaroslav
22.01.2017
21:19:21
Ребят, подскажите плз
В методе componentDidMount я вызываю функцию которая находится в actions, в ответ мне приходят данные в props. Вопрос: где лучше ими оперировать в дальнейшем?
Т.е я имею в виду в каком методе
У меня получилось их найти только в componentWillRecieveProps
Это нормальная практика? Просто от репозитория к репозиторию подходы в корне развеяться, а так как у меня опыта не так много, то и сравнить не получается

Dmitry
22.01.2017
21:20:01

Nikolay
22.01.2017
21:20:24
Yaroslav что ты хочешь с этими пропсами сделать?

Yaroslav
22.01.2017
21:20:52
Ну например отобразить в компоненте

Dmitry
22.01.2017
21:21:02
"Привет, ты у нас новенький на работе, вот смотри - тут у нас прозрачный див по клику на который мы тригерим закрытие всех тултипов/дропдаунов/попапов" :)

Nikolay
22.01.2017
21:21:11
тогда оперируй с пропсами в render() методе
они доступны по this.props

KlonD90
22.01.2017
21:21:21
а есть кто пообщаться про https://github.com/logux/logux-core ?

? Алёна
22.01.2017
21:22:02

Yaroslav
22.01.2017
21:22:18
Это я уже понял методом проб и ошибок, а если не рендер, а например справа фильтрация, а потом вывод
Nikolay

Nikolay
22.01.2017
21:22:30
итого получаем полметра js и ни строчки бизнес логики
Yaroslav ну создай метод в котором выдерни что то из props, отфильтруй и выводи в render

Google

Nikolay
22.01.2017
21:23:20
но мне кажется это должен делать reducer если у тебя redux

Roman
22.01.2017
21:23:37
объясните почему React.createClass это плохо

Nikolay
22.01.2017
21:23:51
это не плохо, это медленно

Roman
22.01.2017
21:24:16
меня так тутор научил а он не такой и старый - 15 часов счастья =(
да и как-то внятней читается нежели конструкторы в React.Component блин - глаза слизятся при виде такого кода в доках
class Game extends React.Component {
constructor() {
super();
this.state = {
history: [{
squares: Array(9).fill(null)
}],
xIsNext: true
};
}
...
}

Nikolay
22.01.2017
21:25:52
вот тут видос https://youtu.be/PnpfGy7q96U
про это

Dreamerinnoise
22.01.2017
21:25:56

Roman
22.01.2017
21:25:59
спсиб

Yaroslav
22.01.2017
21:25:59
Можно сразу импортировать Component

Roman
22.01.2017
21:26:03
иду смотреть )

Yaroslav
22.01.2017
21:26:21
Чтобы не писать React.Component

Roman
22.01.2017
21:26:22

Таймураз
22.01.2017
21:26:25

Roman
22.01.2017
21:26:27
про это
как давно это вышло из использования?

Nikolay
22.01.2017
21:26:43
а мне банально нравятся es6 классы

Yaroslav
22.01.2017
21:27:15

Roman
22.01.2017
21:27:40
Сразу видно, что на строго типизированных языках не писал
писал - и в js это выглядит отвратительней чем в любом другом языке ) на чем я только неписал в этой жизне. просто немогу смотреть когда код в балаган превращается просто незачем тут это ну ладно иду видео смотреть - прогресировать

Nikolay
22.01.2017
21:28:25
Yaroslav вот тут Дэн рассказывает про примерно похожий кейс https://egghead.io/courses/building-react-applications-with-idiomatic-redux

Таймураз
22.01.2017
21:28:44

Google

Nikolay
22.01.2017
21:29:13

Dreamerinnoise
22.01.2017
21:29:28
это посыл в сторону, что классы не нужны в Js
и это холивор тащемта

Roman
22.01.2017
21:29:53

Nikolay
22.01.2017
21:29:54
ну в текущем виде, да это красивый способ создать объект с наследованием

Roman
22.01.2017
21:30:12

Nikolay
22.01.2017
21:30:22

Nikita
22.01.2017
21:31:14

Roman
22.01.2017
21:31:30

Dreamerinnoise
22.01.2017
21:31:34

Admin
ERROR: S client not available

Roman
22.01.2017
21:31:38
больше причин у меня нет

Dreamerinnoise
22.01.2017
21:31:50
неидеоматично уже?

Yaroslav
22.01.2017
21:32:10
Можно сразу импортировать Component
Чтобы не писать React.Component

Roman
22.01.2017
21:32:23
)))
и че это меняет
мнебы getInitialState а не super() с this.state..

Yaroslav
22.01.2017
21:32:57
Будут примеры Component

Nikolay
22.01.2017
21:32:58

Google

Andronov
22.01.2017
21:33:07
Доброй ночи! подскажите как лучше решить проблему с двумя версиями сайта(моб и веб) на реакте? писать максимально адаптивный код не получится,логика разная.
Создавать разные компоненты для разных версий но при билдинги это будет превращаться в большой код? есть ли решение?

Dreamerinnoise
22.01.2017
21:33:12

Roman
22.01.2017
21:33:18
чем дальше тем глубже

Dreamerinnoise
22.01.2017
21:33:25
там проще
state = {}

Roman
22.01.2017
21:33:29

Dreamerinnoise
22.01.2017
21:34:28
ну как свойства в классе

Nikolay
22.01.2017
21:34:39
можно же просто писать class MyComp extends Component { state = {} .... }
без всяких constructor

Roman
22.01.2017
21:35:20
ну во хоть какой-то вазилин

Nikolay
22.01.2017
21:35:40
можно это через babel или уехать на ts

Таймураз
22.01.2017
21:35:57

Nikolay
22.01.2017
21:35:57
а так да, классы в js гипер кастрированные

Roman
22.01.2017
21:36:53

Roman
22.01.2017
21:36:55
Хотя, React.createClass вроде как удобнее для миксинов

Nikolay
22.01.2017
21:36:57

Таймураз
22.01.2017
21:36:57

Nikolay
22.01.2017
21:37:35

Roman
22.01.2017
21:37:42
в сss просто условия для екрана что бы прятать то че ненужно на мобилках

Andronov
22.01.2017
21:38:29

Yaroslav
22.01.2017
21:38:36

Roman
22.01.2017
21:38:44
да и bootstrap columns для этого есть )
ну так начинают покрайней мере )
и че вот так и будут все рефакторить каждый год из esX в esY