
Artyom
14.12.2017
07:10:35
По моему опыту на либах сложно делать связанные поля, в остальном они позволяют убрать некоторый бойлерплейт, типа: wasTouched, валидацию на блюр и т.п.

Владимир
14.12.2017
07:11:48
Морока в том, что redux-form пытается выполнить destroy при unmount компонента. А если указывать флаг, чтоб не дестроил, то приходится очищать вручную. И с предзаполнением были сложности, если значения для ввпадахи например подгружаются динамически

Artyom
14.12.2017
07:12:41
Не надо использовать redux-form, если ты точно не представляешь зачем это тебе нужно. Это я не тебе ^ конкретно, а вообще

Владимир
14.12.2017
07:12:44
Как раз связанные поля на redux-form неплохо получились

Google

Artyom
14.12.2017
07:13:07
Ну потому что redux

Владимир
14.12.2017
07:15:59
Ну и вообще удобно следить в redux extension, что именно там в сторе

Alexander
14.12.2017
07:21:14
Мне бы понять зачем это другим людям нужно?:) Что бы не писать бойлер плейт для контактной формы?)

Artyom
14.12.2017
07:23:03
хайп

Alexander
14.12.2017
07:25:15
ну если так, то грустно :(
спасибо :)

Anton
14.12.2017
07:42:25
; не возможно НЕ писать если нет линтера, который спасёт от тупейших ошибок автоинвокации, которые _конечно_ же будут.
С линтером все окей, но это значит что ; должно быть в правилах линтинга так как спасает от ошибок.
Но тот же Абрамов совсем недавно наезжал на стандарт.js(там эпичный тред), а теперь сам без точек с запятой.

Cenator
14.12.2017
07:43:19
никаких ошибок не будет
к тому же вебпак ставит ;

Anton
14.12.2017
07:43:53
Это с линтером. А без него?

Google

Artyom
14.12.2017
07:44:06
Что плохо, вся redux дока без ;

Oleg
14.12.2017
07:44:19
Если у кого то есть опыт с этими библиотеками, больше чем контактная форма. Поделитесь ощущениями.
Использую react-redux-form.
Из плюсов - из этой либы можно не использовать ни одного компонента, только создавать редьюсеры, и руками триггерить в полях ввода соответствующие экшены.
Есть все для создания кастомных компонентов, в общем относительно гибкая либа.
Состояние отдельного элемента формы разумное (фокус, валидность, и тд).
Из минусов (на проекте используются компоненты всех видов, от масок до автокомплита) - если апи компонента не соответствует стандартному onChange/value, а как в react-autosuggest к примеру в отдельных коллбэках меняется значение поля ввода - могут быть трудности с интеграцией
Но это если встроенный control компонент юзать. С другой стороны, без него слишком много работы руками надо делать

Alexander
14.12.2017
08:04:23

Oleg
14.12.2017
08:06:01

Andrew
14.12.2017
08:06:18
React final form

Alexander
14.12.2017
08:08:02

dima
14.12.2017
08:09:40
всем привет. Вставляю url в styled-components и в итоге выходит вместо
/url/url1
->
url.url1
т.е в стилях слеши на точки какого то хрена заменились

Awario
14.12.2017
08:13:58
babel поддерживает fetch или нужно использовать isomorphic-fetch?

Andrey
14.12.2017
08:16:22

Awario
14.12.2017
08:16:46

Andrey
14.12.2017
08:17:02
Изоморфик иногда криво в IE работает. А остальные браузеры уже имеют нативную поддержку этой функции.

Igor
14.12.2017
08:22:57

Andrey
14.12.2017
08:24:53
Единообразие важнее.

Anton
14.12.2017
08:32:26

Andrey
14.12.2017
08:33:31

Anton
14.12.2017
08:33:56
Есть форк стандарта с семиколонами

Andrey
14.12.2017
08:34:10
И как у него дела?

Anton
14.12.2017
08:41:55
Его автор вставляет липку на репу в каждый тред про стандарт и семиколоны. Наверное не плохо.

Google

Cenator
14.12.2017
08:42:32

Erving
14.12.2017
08:44:59
друзья, есть странная проблема с сортировками. есть массив в рендере, и он периодически сортируется по определенному принципу (вверху списка появляется новый элемент). но почему-то первый элемент у меня никогда не меняется, новые элементы добавляются на вторую позицию.
render() {
var arr = this.arr;
return (
<ul>
{arr.map( (value, index)=>{
return(
<li key={index}>
<br />
<a href={value.link}>{value.title}</a>
</li>
)
})}
</ul>
)
}

Cenator
14.12.2017
08:45:55

Erving
14.12.2017
08:46:09

Cenator
14.12.2017
08:46:10
уникальный
не индекс массива
строку можно

Erving
14.12.2017
08:47:28

Alexander
14.12.2017
08:50:22

Andrey
14.12.2017
08:56:51

Erving
14.12.2017
09:09:50

Andrey
14.12.2017
09:10:38

Erving
14.12.2017
09:11:07
Покажи код сортировки.
componentWillReceiveProps(nextProps){
if (nextProps.newsList !== undefined){
this.arr = nextProps.newsList;
this.arr.sort((a, b)=>{
new Date(a.date) - new Date(b.date);
})
return this.arr;
}
}

Andrey
14.12.2017
09:13:45

Erving
14.12.2017
09:14:24

Alexander
14.12.2017
09:14:58
разве твоя функция сортировки не возвращает undefined?

Cenator
14.12.2017
09:15:12
погоди, зачем ты в this.arr сохраняешь? реакт не следит за ним

Andrey
14.12.2017
09:15:17
Кстати да.

Erving
14.12.2017
09:16:04

Google

Andrey
14.12.2017
09:16:07

Cenator
14.12.2017
09:16:21
лол

Erving
14.12.2017
09:17:07
лол
var arr = this.arr;
а что?)

Cenator
14.12.2017
09:17:17

Александр
14.12.2017
09:17:19
резби , вопрос.
Могу ли я как-то через екшн применять селектор?

Andrey
14.12.2017
09:17:34

Cenator
14.12.2017
09:17:39

Admin
ERROR: S client not available

Artyom
14.12.2017
09:18:01
Тебе сказали фигурные скобки убрать (ретур вычисляемого выражения тогда будет)

Alexander
14.12.2017
09:18:59
если используешь { всегда нужен return, даже если код из 1 строки}

Stepan
14.12.2017
09:20:33

Andrey
14.12.2017
09:21:22

Stepan
14.12.2017
09:22:08
А куда?
Ну я предполагаю, что он рендерит потом с него
Или не?

Artyom
14.12.2017
09:22:14
Видимо знает, что сортировка мутирует, но не знает про то как объекты в переменных храняться

Andrey
14.12.2017
09:22:16

Stepan
14.12.2017
09:22:37
Есть мнение, что рендерить не из state или props - плохая затея

Andrey
14.12.2017
09:22:50

Erving
14.12.2017
09:23:18

Google

Stepan
14.12.2017
09:23:32

Владимир
14.12.2017
09:24:05
а setState для кого придуман?

Падре
14.12.2017
09:24:13
Здравствуйте, а подскажите где можно почитать о особенностях разработки front-end на react в high load системах

Andrey
14.12.2017
09:24:33

Erving
14.12.2017
09:24:51

Stepan
14.12.2017
09:25:07

Владимир
14.12.2017
09:25:48
я убрал, пока всё так же
не надо мутировать какие-то переменные компонента напрямую. Отсортируй массив как надо и сделай setState

Andrey
14.12.2017
09:25:48
Почему бы нет?
Не особо нравится стейт загаживать. Мне кажется, что он должен быть как можно меньше.

Stepan
14.12.2017
09:26:10
Иначе рискуешь оставить компонент необновленным

Alexander
14.12.2017
09:26:28
Выложи компонент со своей сортировкой на codepen или тп что бы можно было поиграть. Я с удовольствием помог бы.

Andrey
14.12.2017
09:26:42

Cenator
14.12.2017
09:26:46

Erving
14.12.2017
09:26:56
Ну показывай
componentWillReceiveProps(nextProps){
if (nextProps.newsList !== undefined){
this.arr = nextProps.newsList;
this.arr.sort((a, b)=>{
return new Date(a.time) - new Date(b.time);
})
}
}

Andrey
14.12.2017
09:27:28

Stepan
14.12.2017
09:27:53

Artyom
14.12.2017
09:28:18
Ну он ретурн вставил

Erving
14.12.2017
09:28:22

Stepan
14.12.2017
09:28:31