
Nikita
17.05.2016
16:59:12
в таком случае какие проблемы с key в массивах?)

Anton
17.05.2016
16:59:58

Nikita
17.05.2016
17:00:50
я не конкретно тут увидел. Вдруг тут есть адепты

hlomzik
17.05.2016
17:00:59

Google

Nikita
17.05.2016
17:01:31
если у тебя массив статичен и не меняется - ничего плохого, в том чтобы так сделать нет
или у тебя ключ - действительно индекс в массиве, почему бы и нет?

hlomzik
17.05.2016
17:02:55
вот несколько кейсов, где я делаю Object.entries(data).map(([name, values]) => <div/>)

Nikita
17.05.2016
17:03:32
ну и возьми name ключем, в чем проблема?

hlomzik
17.05.2016
17:03:34
индекс реакт и сам проставляет, это лишнее и нерекомендуемое действие

Nikita
17.05.2016
17:04:53
ну ты же хочешь чистую от ошибок консоль. Еще раз, если у тебя по логике индекс в массиве является PK для этих данных - почему бы и нет
смысл в том, чтобы в любой другой render предыдущий и новый key совпадали. Все. Как ты этого добьешься - твое дело

Anton
17.05.2016
17:20:11

Ruslan
17.05.2016
17:37:22
index в качестве ключа не ок
точнее автоматический индекс, тот что react присваивает

hlomzik
17.05.2016
17:39:04
что-то вот не могу найти этих слов. наверное, видел не в доке а в очередном “руководстве"

Ruslan
17.05.2016
17:40:34
http://jaero.space/blog/react-performance-1

Nikita
17.05.2016
17:43:59

Google

Dmitry
17.05.2016
18:17:42
Кстати, возник еще вопрос: хорошая практика - зашивать в глупые компоненты варианты передаваемых обработчиков? Например, когда есть список айтемов, иметь возможность передать в компонент onItemClick, в который можно передать индекс. Или все-таки лучше писать как-то более абстрактно, передавая в блок какой-нибудь itemProps с нужными обработчиками, а индекс брать автомагически откуда-нибудь?

from
17.05.2016
18:51:26

Sergey
17.05.2016
18:56:06

Alexei
17.05.2016
20:01:40
блин, чем не закалебал фронтенд дев, и все что с ним связано, "сегодня" делаем все по туториалам, завтра получаем варнинги, а после завтра, уже ничего не работает... shrinkwrap только и спасает..
прошел этот туториал https://learnredux.com/view/237g5mcT8Ho
но там теперь сыплятся два варнининга, когда передаешь в чайлд компонент this.props..
гугл выдал на проблему шестидневной давности
сейчас не у компа, завтра могу скинуть ссылки..


Dmitry
17.05.2016
20:15:01
можешь ещё пояснить как-то?..)
Смотри, у меня есть компонент input, в котором лежат всякие дивы и внутри настоящий input и есть вариант писать:
1) <div className="input"><input className="input__field" onFocus={props.onFocus}</div>
2) <div className="input" {...props}><input className="input__field" {...props.fieldParams} /></div>
Второй вариант пугает тем, что на каждый новый кейс надо лезть в компонент и добавлять туда что-то + есть вариант завязать себе самому узел, когда повесишь props.onClick куда-нибудь внутрь, а потом появляется необходимость повесить его же на родителя и вот ты уже выдумаешь названия или меняешь повсеместно
У меня просто с этим связана особая боль на работе) У нас не реакт, но одна библиотека блоков на несколько проектов и на такой рефакторинг при изменении компонентов не хватает времени)

Alexei
17.05.2016
20:18:25
https://github.com/facebook/react/issues/6653
кажится эта фишка, не знаю как решить, все isSue на эту тему просто закрываются..(

from
17.05.2016
20:22:14

Dmitry
17.05.2016
20:23:23
Может с реальным кодом понятнее будет:
https://www.dropbox.com/s/9k4zpn1otxuplfg/%D0%A1%D0%BA%D1%80%D0%B8%D0%BD%D1%88%D0%BE%D1%82%202016-05-17%2023.23.10.png?dl=0

from
17.05.2016
20:25:14
это типа бэм-компонент что ли?

Dmitry
17.05.2016
20:25:35
ну классы могут быть любые, у меня просто хелпер для нейминга

from
17.05.2016
20:26:44
короче да, походу тебе именно эта ссылка нужна )
конструкцией const { specialProp, notForInput, ...other } = props; вытягиваешь специальные пропсы, остальное через {...other} инпуту передаёшь

Google

Dmitry
17.05.2016
20:29:46
Напрягает то, что может появиться второй элемент, которому нужно тоже уметь передавать обработчики. По сути у меня fieldParams, icon, suggest - чем то похожи

from
17.05.2016
20:30:14
не надо fieldParams
в "other" должны остаться стандартные хтмл атрибуты

Dmitry
17.05.2016
20:32:34
а если в компоненте нужно вешать onClick на 2 разных ноды?

from
17.05.2016
20:33:08
в чем проблема?)

Dmitry
17.05.2016
20:33:27
ну в other будет только один)

from
17.05.2016
20:33:36
это разные клики, несут разный смысл, значит и называются в пропсах по-разному

Dmitry
17.05.2016
20:34:16
спасибо) про это и спрашивал)
у меня панаройя похоже уже про абстрактность)

Dmitrii
17.05.2016
20:35:36
вброшу http://facebook.github.io/reason/

Denis
17.05.2016
20:36:58
Понеслось

Dmitrii
17.05.2016
20:37:15
:D

Ҫѐҏӗѫӑ
17.05.2016
20:39:29
не нужно

Sergey
17.05.2016
20:54:01

Dmitrii
17.05.2016
20:54:25
ага.. с gif animations перемудрили

Sergey
17.05.2016
20:59:00

Dmitrii
17.05.2016
21:00:07
видимо так :) я сам пока не понимаю куда это все движется

Ҫѐҏӗѫӑ
17.05.2016
21:02:57
все так

from
17.05.2016
21:03:51
че с npm

Google

from
17.05.2016
21:03:56
у всех норм?

Ҫѐҏӗѫӑ
17.05.2016
21:05:53
ну вроде пока это не свой окамл
но чего еще от них ожидать
это типа редактор кода пока что вроде

Admin
ERROR: S client not available

Ҫѐҏӗѫӑ
17.05.2016
21:06:56
а, нет
уже началось
все очень плохо
но пока только парсер заменили

Sergey
17.05.2016
21:08:20
Ага:
“Reason replaces part of the compiler toolchain with a completely new syntax parser that is more approachable, while still fully compatible with the rest of the compiler. “
Ничего интересного, в общем.

Ҫѐҏӗѫӑ
17.05.2016
21:08:54
в общем, как и всегда :)

Denis
18.05.2016
00:06:23
Для тех, кто начинает свой путь в мир React.js: https://github.com/petehunt/react-howto#learning-flux

Mikhail
18.05.2016
08:36:56
Зачем в css-modules есть :local и :global? Ни разу не сталкивался с их необходимостью

Andrey
18.05.2016
08:38:32
глглобал нужен, что бы сделать глобальный css класс

Mikhail
18.05.2016
08:39:40
Чтоб в разных модулях его юзать например? Или чтобы не обращаться к нему через style.globalClassname ?

Pavel
18.05.2016
08:50:30
Чтобы стили сбросить например

Vladimir
18.05.2016
08:52:46
если ты используешь стороннюю либу в которой нет возможности что-то изменить, а там уже используется class="alibaba", тогда все что тебе остается :global(.alibaba) { color: red; }

from
18.05.2016
09:59:23

Evgeny
18.05.2016
10:27:45
Кто может мне объяснить set(x) ? вот здесь - http://cl.ly/1d3o2U1v0z2U

Google

Evgeny
18.05.2016
10:29:15
рановато задал вопрос))
сорян, все стало понятно))

Алексей
18.05.2016
10:29:38
Что за статья?

Evgeny
18.05.2016
10:29:52
https://medium.com/@gaperton/managing-state-and-forms-with-react-part-1-12eacb647112#.gsnbkdvas
от Vlad Balin

Алексей
18.05.2016
10:30:04
thinks

Evgeny
18.05.2016
10:30:13
про паттерн Value Link

Den
18.05.2016
10:32:22
А что за синтаксис
const TextInput(...) => ();

Artur
18.05.2016
10:33:05
Stateless components

Алексей
18.05.2016
10:33:09
stateless component
https://facebook.github.io/react/docs/reusable-components.html#stateless-functions

Den
18.05.2016
10:33:59
не, я про языковую конструкцию

Алексей
18.05.2016
10:34:18
arrow function

Den
18.05.2016
10:34:30
я пишу так const TextInput = (...) => ();

Алексей
18.05.2016
10:35:08
возможно дело в отображении компонента в react tools