
Dmitry
25.05.2016
14:46:39
Парни, подскажите, кто как передает аттрибуты внутрь компонент? у меня мозг разрывается между несколькими вариантами)
1) let { foo, bar, ...rest } = props; <Component {...rest}>...</>
2) let { foo, bar, params } = props; <Component {...params} >...</>
3) let { foo, bar, onClick, href } = props; <Component onClick={onClick} href={href}>...</>
4) Может еще какой-то?

Vladimir
25.05.2016
14:52:47
3

hlomzik
25.05.2016
14:53:39
3
зачем тогда временные переменные?

Vladimir
25.05.2016
14:54:06
можно и без них

Google

Vladimir
25.05.2016
14:54:28
но с ними код лучше выглядит

Anton
25.05.2016
14:55:01
Поддерживаю вариант 3

anoru
25.05.2016
14:55:33
Это если не надо 500 пропсов передавать

kaflan
25.05.2016
14:55:51
3

Anton
25.05.2016
14:56:03

Dmitry
25.05.2016
14:56:06
Господин anoru понимает к чему я клоню :)

Vladimir
25.05.2016
14:56:29
а если надо, то у тебя в ...rest - гнусный клубок из 500 переменных, которыми ты не очень управляешь
как минимум, требует рефакторинга

Dmitry
25.05.2016
14:57:03
Поэтому я пришел к params

anoru
25.05.2016
14:57:12
Самая основная проблема при прокидывание всех пропсов это то, что в react dev tools будет вся эта каша показываться

hlomzik
25.05.2016
14:58:15
смежный, кстати, вопрос? как передать всего несколько атрибутов? но когда их не два, а побольше. проксирование подмножества
let { onClick, onLoad, onSubmit, onAnyOtherEvent } = this.props
<Smth {...({ onClick, onLoad, onSubmit, onAnyOtherEvent })} />

anoru
25.05.2016
14:59:09
не встречал такой вариант еще)

hlomzik
25.05.2016
14:59:31
можно сделать props.handler как хранилище проброшенных хэндлеров

Google

Grigory
25.05.2016
15:00:30
а валидировать типо не надо?

Dmitry
25.05.2016
15:00:42
по сути params это оно и есть, только там в принципе все, что можно повесить на тег

hlomzik
25.05.2016
15:00:57

Grigory
25.05.2016
15:01:06

hlomzik
25.05.2016
15:01:50
да
там же можно валидировать структуры вроде как

Grigory
25.05.2016
15:03:21
глянул можно

Vladimir
25.05.2016
15:05:03
но это какая-то экономия на спичках, экономите пару строк. но в коде появляется дичь вроде {...({ onClick, onLoad, onSubmit, onAnyOtherEvent })}
или еще хуже {...rest}
бывают случаи, когда это полезно
типа в дизайн-обертках к инпутам.

Kir
25.05.2016
16:04:14
Посоветуйте документацию по ReactJS на русском )

Dmitry
25.05.2016
16:05:24
Тебе по верхам или перевод фбшной ищешь?

Kir
25.05.2016
16:06:23
Верхушки вроде все изучил уже, когда лезу в код готово SPA голова кругом идёт, фбшной - вообще бы идеально было бы.

Dmitry
25.05.2016
16:07:55
http://tftf.ru/stati/javascript/reactjs/ вот какой-то похожий, но перевод как-то корежит читать такой. Мне кажется уж лучше в оригинале

Kir
25.05.2016
16:09:45
Натыкался на этот сайт, тоже не в восторге, но спасибо )

Ҫѐҏӗѫӑ
25.05.2016
16:11:33
там в репке были pr с переводом на русский

Kir
25.05.2016
16:12:11
Мне понравился вот этот курс - https://www.gitbook.com/book/maxfarseer/react-course-ru/details
@chicoxyzzy Ты про это ? https://github.com/facebook/react/tree/master/docs/docs

Ҫѐҏӗѫӑ
25.05.2016
16:19:58
да

Aleh
25.05.2016
16:25:07
сейчас попробовал у себя на одном модуле заменить action creator function + constant на action creator class и вместо type middleware подставляет class.name. Получается меньше кода, только конечно придется следить за уникальностью имен классов

Google

Aleh
25.05.2016
16:26:14
и плюс typescript сахар для конструктора( constructor(public someParam: SomeType) )

Mikhail
25.05.2016
17:03:54
Использую серверный рендеринг и добавил resolve.alias в webpack. Возникает проблема на сервере, что не может заинклюдить по такому пути
Использовал require-hook, но получил ругань:
(function (exports, require, module, __filename, __dirname) { import React, {Component} from 'react';
^^^^^^
SyntaxError: Unexpected token import
Как быть? ?

Alexander
25.05.2016
17:07:04
Добавь алиасы в babel
https://www.npmjs.com/package/babel-plugin-module-alias

Mikhail
25.05.2016
17:08:05
Спасибо, надеюсь решит траббл ?

Alexander
25.05.2016
17:08:30
ну и в довесок
https://github.com/tleunen/eslint-import-resolver-babel-module-alias
Хотя стоп. У тебя ругается на реакт, он же в node_modules. Он точно в алиасах?

Mikhail
25.05.2016
17:12:21
я заюзал resolve.root

Alexander
25.05.2016
17:12:28
мне кажется у тебя с babel проблема. stage-0 ?

Mikhail
25.05.2016
17:13:00
node_mobules добавил в resolve.root и в modulesDirectories
Разве babel виноват? я ж модуль загружаю через require_hook - подменяю путь

Alexander
25.05.2016
17:14:38
транспаленый код, который генерит babel не понимает import. По крайней мере очень на это похоже.
У меня была такая ошибка, когда неправильно babel был настроен. Если бы это был alias то он ругался бы, что не может заимпортить

Mikhail
25.05.2016
17:16:55
он и ругался что не может заинклюдить. Тока я начал проблему велосипедом решать - через хуки
Спасибо, попробую модуль

Alexander
25.05.2016
17:17:44
Просто меня смущает что node_modules в алиасах
покапайся вот тут, там есть серверный рендеринг
https://github.com/erikras/react-redux-universal-hot-example

ENAMETOOLONG
25.05.2016
17:19:03
Да, шикарная репа ??

Mikhail
25.05.2016
17:23:51

Google

Denis
25.05.2016
17:58:27
Сегодня общался с разработчиками в одном из профессиональных чатов и вот так легко, спонтанно, в естественной форме, у меня взяли интервью про SM. Получилось так по делу, что решил опубликовать. https://medium.com/@DenisIzmaylov/startup-makers-%D0%B4%D0%BB%D1%8F-%D0%B0%D0%BA%D1%82%D0%B8%D0%B2%D0%BD%D1%8B%D1%85-javascript-%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D1%87%D0%B8%D0%BA%D0%BE%D0%B2-cb8732bd78b6#.dwucb5bgb

Dan
25.05.2016
18:03:02

Denis
25.05.2016
18:09:58
Like. Share. Repost!?

Евгений
25.05.2016
18:13:52

Denis
25.05.2016
18:14:17
Уже более :)

Евгений
25.05.2016
18:15:01
А с какого момента ты отсчет ведешь?

Denis
25.05.2016
18:16:05
С того момента, когда написал свою первую ОС на Assembler :)

Евгений
25.05.2016
18:16:20
а, круто
ну тогда у меня 17 лет разработки

Admin
ERROR: S client not available

Евгений
25.05.2016
18:16:56
только я обычно считаю с того момента, как мне начали за это платить

trump ? trump ? hillary
25.05.2016
18:17:08
просто люди так не скатываются

Dan
25.05.2016
18:18:18
@DenisIzmaylov у тебя для backend/operations/server engineer - ничего нет? )))

Denis
25.05.2016
18:18:20
Некоторым платят и без опыта :) Мамонт. Нас таких единицы во Front-end.:)

Евгений
25.05.2016
18:20:18
Ну я не про фронтенд
И я ошибся
я вспомнил самую первую программу
она была еще раньше
во времена диалапа и quake ii

Google

Евгений
25.05.2016
18:22:40
интересно, на вторую кваку есть какой-нибудь эмулятор?

Denis
25.05.2016
18:22:44
Оно у всех в разное время началось. В Сибири по традиции позже Москвы. Где-то в 98-99 году я начал с Basic, потом Pascal, Assembler, Delphi, Win32 API, COM+/DCOM и понеслось)

Евгений
25.05.2016
18:23:10
а я на Урале

Dan
25.05.2016
18:23:55
я так и знал, никому бэкенд уже не нужен )))

Евгений
25.05.2016
18:24:43

Dan
25.05.2016
18:25:33
я просто почитал статью Дениса, сказка, песня, прям захотелось работать с ними )))))
.net не моё ? C# почти что Java, но нет
платформа угнетает. хотя в целом очень даже не сложно, как оказалось )

Евгений
25.05.2016
18:26:47

Dan
25.05.2016
18:27:16
чем?
мне это сложно объяснить в двух словах. это еще с тех самых времён, когда для простого действия нужно было подключать неведомую библиотеку, а при компиляции файл либо весил нехило так, либо требовал какой-нибудь загадочной версии .net, а обычно - и то и другое сразу. и казалось бы, ну что такого то? обычная утилита, к примеру, на питоне или go сейчас решается вообще в пару десятков строк. ну ладно, в полсотни. тем не менее...
я не спорю ни в коем случае, многое изменилось скорее всего

Denis
25.05.2016
18:38:27
Да ладно вы, .NET хорошая платформа. Я правда с ней всего пару лет работал. Она 5 лет назад была популярна в Европе. Мы тогда запилили пару проектов для Nokia-Siemens Network, там был классный WPF, который прямо как React, ещё дажее больше на него похож, чем Delphi.

trump ? trump ? hillary
25.05.2016
18:42:20
они только по синтаксису похожи

Кисик
25.05.2016
18:49:36

trump ? trump ? hillary
25.05.2016
18:50:29
developers in 2016

Aleh
25.05.2016
20:02:18
^ что вообще говоря не так и плохо :)

trump ? trump ? hillary
25.05.2016
20:02:38
довольно слабоумно

Aleh
25.05.2016
20:04:40
ну хз-хз. Тут все равно работает теория дарвина, вначале есть интерес к любой ерунде, а потом они сами собой умирают