@react_js
React — русскоговорящее сообщество

Обсуждаем React.js и экосистему. См. также: @reactnative_ru, @apollo_ru, @protonnative_ru, @nodejs_ru, @js_ru, @uiux_ru Вакансии и поиск работы: @javascript_jobs Правила: http://bit.ly/our_etiquette Sponsored with ❤️ by www.axept.co

5822 members

Архив канала @react_js 6 мая 2016 г.

12:03:30 ДП
User 12791
и javascript медленно превращается в JEE :)
12:04:01 ДП
User 12791
я помню лет 5 назад было здорово что можно было писать javascript прям в vim без каких-либо IDE
12:04:07 ДП
User 12791
потомучто все было просто и понятно
12:04:40 ДП
User 12791
теперь все статически типизировано, кодмоды повсюду и куча инструментов в IDE
12:12:26 ДП
User 4627228
Даже не медленно )
12:13:09 ДП
User 4627228
Я до сих пор помню, как писал в блокноте и высчитывал строки
12:13:17 ДП
User 4627228
Отлаживал в IE3
12:13:34 ДП
User 4627228
https://github.com/ternjs/tern_for_sublime кстати, саблайм тоже может навигацию
github.com/ternjs/tern_for_sublime
tern_for_sublime - Sublime Text package adding Tern support
12:43:32 ДП
User 104477
User 152745946
тут смысл в том, что данные отдельно, вью отдельно
А всего-то надо было прочитать, в чем смысл паттерна)
12:43:51 ДП
User 104477
User 4627228
Отлаживал в IE3
Ты очень старый
12:44:36 ДП
User 104477
User 12791
я помню лет 5 назад было здорово что можно было писать javascript прям в vim без каких-либо IDE
И ща можно, прикинь
12:46:05 ДП
User 12791
@chudesnov не всегда :)
12:53:57 ДП
User 57648988
nuclide-то считается за IDE уже?
12:55:44 ДП
User 104477
User 12791
@chudesnov не всегда :)
Пока не закоммитил в корпоративную репу, можно ваще все!
01:38:01 ДП
User 49750626
User 57648988
nuclide-то считается за IDE уже?
что это за IDE без поддержки windows?
05:46:56 ДП
User 1395200
User 49750626
что это за IDE без поддержки windows?
Наброшу ка https://twitter.com/miketansky/status/728333231444135936
twitter.com/miketansky/status/728333231444135936
Остерегайтесь фронтендеров, работающих на винде
05:59:32 ДП
User 143141567
А вы как то разделяете редьюсеры для разных вьюшек? Типо что-нить на подобии
state={
    app: {}, // глабальные данные
    about: {}, // редьюсеры только для вьюшки about
    login: {} // только для login
}
06:00:07 ДП
User 143141567
*глобальные
06:50:10 ДП
User 23384802
User 4627228
https://github.com/ternjs/tern_for_sublime кстати, саблайм тоже может навигацию
github.com/ternjs/tern_for_sublime
tern_for_sublime - Sublime Text package adding Tern support
к сожалению, очень плохо работает и вылетает переодически
07:27:10 ДП
User 153807368
и последний коммит 8 декабря, печаль
но думаю стоит попробовать как минимум
07:27:14 ДП
User 110771442
User 49750626
что это за IDE без поддержки windows?
Нормальная
07:30:01 ДП
User 56924675
legacy windows
07:37:02 ДП
User 1340580
User 4627228
Есть ли для Atom хороший Git инструмент, как в WebStorm?
А что ты имеешь ввиду?
07:38:19 ДП
07:38:46 ДП
User 1340580
Все остальное смотрю в sourceTree (дерево коммитов, например).
07:51:20 ДП
User 152745946
User 143141567
А вы как то разделяете редьюсеры для разных вьюшек? Типо что-нить на подобии
state={
    app: {}, // глабальные данные
    about: {}, // редьюсеры только для вьюшки about
    login: {} // только для login
}
ты уверен, что тебе нужен redux?
07:51:41 ДП
User 143141567
User 152745946
ты уверен, что тебе нужен redux?
а какие альтернативы?
07:52:05 ДП
User 152745946
держать стейт внутри реактового стейта
07:52:17 ДП
User 152745946
у меня был контент сайт, там такой подход норм работал
07:52:29 ДП
User 152745946
если нет никаких данных, которые надо шарить
08:11:09 ДП
User 192559518
использовать стейт внутри компонента не есть плохо
08:11:40 ДП
User 192559518
все зависит от подхода
08:11:58 ДП
User 192559518
для приложения я бы так не делал
08:12:53 ДП
User 202047214
Привет, кто-нибудь может помочь с парой вопросов?
1) Есть ли смысл хранить стейт для ui компонентов (в моем случае кастомный скролл) в редаксовом глобальном стейте?
2) Если используем стейт компонента, то как его проапдейтить в зависимости от рефов? Пытаюсь показать скролбар, если блок не влезает в парента, но в componentDidMount setState не отрабатывает
08:13:42 ДП
User 192559518
1. смысла нет
08:14:44 ДП
User 192559518
2. должен срабатывать
08:15:49 ДП
User 192559518
что значит "не отрабатывает"?
08:19:56 ДП
User 202047214
делаю componentDidMount() {
    this.setState({ scrollable: true });
    console.log(this.state);
  }
08:20:28 ДП
User 202047214
в логе scrollable: false прилетает из constructor
08:29:36 ДП
User 108543364
а есть какая нибудь тулза и/или мануалы как писать фабрики экшенов и редьюсеров?
08:30:53 ДП
User 108543364
User 202047214
делаю componentDidMount() {
    this.setState({ scrollable: true });
    console.log(this.state);
  }
зачем после didmount делать setState?)
08:30:59 ДП
User 108543364
это антипаттерн
08:31:51 ДП
User 108543364
общайся с парентом через колбеки
08:33:20 ДП
User 202047214
Я пока не увидел другого способа сравнить высоту двух нод, записать в какой-нибудь флаг результат и взависимости от него выводить/не выводить скролл
08:33:38 ДП
User 202047214
Ну и чтобы апдейтился при изменение высоты
08:34:19 ДП
User 108543364
сделай компоненту колбек this.proprs.onHeightUpdate(newHeight)
08:36:47 ДП
User 202047214
Спасибо, попробую
08:39:43 ДП
User 152745946
про скролл скажу страшнее
08:39:57 ДП
User 152745946
некоторые вещи стоит вообще хранить вне react/redux/flux/etc.
08:40:04 ДП
User 152745946
а прямо в this.foo компонента
08:41:05 ДП
08:41:32 ДП
User 152745946
вот до чего ваши модные функциональные методы работы с коллекциями приводят:( забываешь правильный синтаксис обычного for
08:41:52 ДП
User 202047214
и руками делать форс апдейт?
08:42:19 ДП
User 4627228
+1, мы разные animation в React Native храним в this. State должен влиять на render.
08:42:50 ДП
User 152745946
нет конечно. Просто скролл вообще не контролируется реактом и иногда хочется что-то запомнить, не обновляя view
08:43:23 ДП
User 202047214
а, в этом плане да) проблема была именно с обновлением)
08:43:38 ДП
User 187983007
User 202047214
делаю componentDidMount() {
    this.setState({ scrollable: true });
    console.log(this.state);
  }
у тебя в этом случае никогда не будет тру, так как setState асинхронная операция!
08:44:14 ДП
User 187983007
this.setState({ scrollable: true }, ()=>{console.log(this.state);});
08:44:18 ДП
User 4627228
Тоже да
08:44:19 ДП
User 187983007
вот так нужно
08:44:47 ДП
User 152745946
ты кастомный скролл делаешь?
08:46:28 ДП
User 101934369
Ребят, кто-нибудь использует Service Workers? Когда вообще они могут быть нужны?
08:47:02 ДП
User 202047214
User 152745946
ты кастомный скролл делаешь?
если мне, то да)
08:47:20 ДП
User 47983686
а зачем?
08:47:54 ДП
User 47983686
я вот поискал, схватил https://github.com/malte-wessel/react-custom-scrollbars и ок
github.com/malte-wessel/react-custom-scrollbars
React scrollbars component. Contribute to malte-wessel/react-custom-scrollbars development by creating an account on GitHub.
08:49:31 ДП
User 152745946
эта либа за собой тянет css-dom, или как-то так. А в целом норм
08:50:23 ДП
User 152745946
User 101934369
Ребят, кто-нибудь использует Service Workers? Когда вообще они могут быть нужны?
https://github.com/w3c-webmob/ServiceWorkersDemos
github.com/w3c-webmob/ServiceWorkersDemos
ServiceWorkersDemos - Demo apps utilizing Service Workers.
08:50:27 ДП
User 47983686
Стандартная проблема либ, что тянут кучу говна, да
08:50:33 ДП
User 47983686
зато время экономят
08:51:06 ДП
User 101934369
User 152745946
https://github.com/w3c-webmob/ServiceWorkersDemos
github.com/w3c-webmob/ServiceWorkersDemos
ServiceWorkersDemos - Demo apps utilizing Service Workers.
Спасибо!
08:51:37 ДП
User 152745946
https://www.chromestatus.com/samples
10:44:55 ДП
User 108543364
кто-нибудь знает как подружить вложенные combineReducers с mapToStateProps, чтобы они тоже вложенно мапились, т.е. контейнер например не знал что он внутри другого контейнера?
10:47:31 ДП
User 108543364
блин, чем дальше в лес, тем больше понимаешь что Redux весь из себя очень зеленый, и кроме хеловордов на нем нечего писать
10:48:29 ДП
User 202047214
а в чем глобально у тебя проблема?
10:48:33 ДП
User 152745946
он вполне готов)
10:48:45 ДП
User 152745946
просто с ним нельзя сделать так, как ты хочешь
10:49:51 ДП
User 202047214
У меня иногда возникает желание удариться головой, чтобы она по другому думать начала, может тогда лучше пойдет)
10:51:22 ДП
User 1340580
Расскажи про задачу которую тебе нужно решить, возможно подскажут какой нужен инструмент для этого. Flux – не панацея, если не знаешь зачем он тебе – значит он не нужен.
10:51:23 ДП
User 108543364
ну значит я не готов :) я пишу большую админку и у меня например есть компоненты которые работают одинаково, но их несколько на странице, данные их них хранятся в сторе. один компонент может лежать в другом и т.п., и непонятно как замапить данные их стора в пропсы, так чтобы контейнеру не дать знать лишнего
10:52:06 ДП
User 108543364
разве что reselect использовать
10:52:28 ДП
User 202047214
У меня такая же проблема была
10:52:34 ДП
User 202047214
https://github.com/reactjs/redux/issues/1628
github.com/reactjs/redux/issues/1628
Hey! (Warn: Rather new to Redux) I have several forms on the same page that have inputs with suggests. So I thought I could possibly write abstract action creators for working with suggests: imp...
10:53:12 ДП
User 108543364
и как ты ее решил?
10:53:40 ДП
User 152745946
в issue решение
10:56:58 ДП
User 108543364
контексты какие то пробрасывать надо
10:59:55 ДП
User 152745946
ну а с флаксом ты как это решишь?)
11:00:29 ДП
User 108543364
кривое решение, получается компоненты у тебя не изолированы, а пишут в одну переменную и в один момент времени можно только один компонент использовать (поправьте меня)
11:01:11 ДП
User 152745946
нет, эта проблема имеет неочевидные решения
11:02:24 ДП
User 152745946
прикинь автокомплит для чего либо
11:02:32 ДП
User 152745946
у тебя есть users и есть query
11:03:10 ДП
User 152745946
query суешь в map id => query, где id - это уникальный идентификатор компонента на странице
11:03:22 ДП
User 152745946
вот и все решение, оно к redux не имеет отношения
11:04:30 ДП
11:05:04 ДП
User 108543364
напридумывали себе проблем)
11:05:24 ДП
User 152745946
а как ты иначе решишь?)
11:05:29 ДП
User 108543364
без редаксов
11:06:11 ДП
User 152745946
и как?
11:06:16 ДП
User 125547436
есть же connect декоратор, этого недостаточно? или я что-то недопонимаю
11:06:23 ДП
User 152745946
вот у тебя есть глобально users и есть кучка query
11:07:04 ДП
User 108543364
вот проблема в этой глобальности, у каждого компонента должен быть свой кусочек в сторе, и другой компонент может у него что-то спросить
11:07:17 ДП
User 108543364
нету тут принципа "Разделяй и властвуй"
11:07:25 ДП
User 152745946
хитрый какой
11:07:31 ДП
User 152745946
я 1 раз данные хочу с сервера брать
11:07:46 ДП
User 143141567
и каким образом он сможет спросить у другого компонента данные?
11:07:55 ДП
11:08:11 ДП
User 152745946
reкостыль это в данном случае
11:08:16 ДП
User 108543364
другой компонент знает в какой переменной он хранит данные
11:08:34 ДП
User 108543364
не, это формализация полномочий компонентов
11:09:13 ДП
User 152745946
вот у тебя есть апишка, она отдает юзеров. Вот у тебя есть инпут, там должен быть автокомплит по юзерам
11:09:23 ДП
User 152745946
тебе нужно 1 раз загрузить всех юзеров, а дальше фильтровать
11:09:31 ДП
User 152745946
твои действия без redux/flux
11:09:33 ДП
User 108543364
у меня их мильон
11:09:37 ДП
User 108543364
зачем их грузить
11:09:51 ДП
User 152745946
не, а у тебя из 20
11:10:27 ДП
User 152745946
ты решаешь разные задачи и говоришь, для этой задачи redux не подходит. Ну да, такое может быть) Разные инструменты под разные задачи
11:10:46 ДП
User 108543364
20 юзеров это из разряда хеловорд приложения
11:10:59 ДП
User 152745946
ничего подобного
11:11:08 ДП
User 152745946
вот у тебя есть чат, и в нем есть контакты юзера
11:11:19 ДП
User 152745946
их обычно не больше 100. Вполне себе кейс
11:11:49 ДП
User 143141567
мы на работе сейчас разрабатываем crm для наших менеджеров, а их 20-30 штук от силы
11:11:55 ДП
User 143141567
а crm далеко не hello world
11:11:55 ДП
User 108543364
ну ок, эти данные я могу хранить на клиенте, я могу их даже предзагрузить и нормализовать, чтобы без асинхронного говна было
11:12:29 ДП
User 152745946
ага и будешь хранить глобально, так?)
11:13:58 ДП
User 108543364
через контекст проброшу от самого рутового компонента
11:14:12 ДП
User 125547436
может стор привязывать к сущностям, а не к компонентам? Компоненту надо работать с юзерами — забирает себе в пропсы юзеров.
11:14:19 ДП
User 108543364
если их всего 20 - это можно рассматривать как настройку приложения
11:14:37 ДП
User 152745946
збс, а теперь у тебя таких списков 20
11:14:44 ДП
User 152745946
все будешь через контекст пробрасывать?
11:17:41 ДП
User 125547436
@connect(state => ({ users: state.users })) 
хоть в самом глубоком компоненте же. Зачем от рутового?
11:17:50 ДП
User 125547436
чет не догоняю в чем проблема
11:18:50 ДП
User 108543364
User 152745946
все будешь через контекст пробрасывать?
20 списков, это типо у каждого юзера свои контакты?
11:19:30 ДП
User 108543364
ну тут денормализованне данные можно хранить
11:19:41 ДП
User 108543364
я тебе вообще про другую боль говорил
11:19:51 ДП
User 152745946
это типо есть контакты, теги, группы, смайлы, и куча других списков, для разных приложений. По которым хочется фильтровать/искать и тд
11:20:05 ДП
User 108543364
что компонент должен знать свой путь до своих переменных в сторе
11:20:11 ДП
User 108543364
причем полный путь
11:20:30 ДП
User 152745946
да, мне это тоже не нравится
11:20:48 ДП
User 152745946
вместо этого можешь использовать flux, где кучка сторов
11:20:50 ДП
User 108543364
и если данные одного контейнера вложены в другой, дочерний контейнер должен знать путь родительского
11:20:53 ДП
User 152745946
это в 100 раз хуже
11:21:10 ДП
User 108543364
ну зоопарк тоже разводить не хочется, уже редакс на проекте
11:21:39 ДП
User 152745946
я к тому, что flux решает эту проблему, но создает другую
11:21:48 ДП
User 108543364
можно конечно multireducer попробовать, но там нет возможности спросить данные какого то конкретного компонента
11:24:21 ДП
User 152745946
просто держи селекторы в отдельном файле, вот и все)
11:24:29 ДП
User 108543364
остается только самому писать велосипеды с фабриками экшенов и редьюсеров
11:24:35 ДП
User 108543364
ну да, так и придется
11:25:13 ДП
User 152745946
так у тебя кроме недовольства есть решение?
11:25:16 ДП
User 152745946
как лучше-то?
11:25:22 ДП
11:25:33 ДП
User 108543364
думал, может кто нить че нить придумал)
11:26:39 ДП
User 108543364
можно конечно не хранить данные в редаксе до тех пор, пока их не нужно шарить между несколькими компонентами
11:26:46 ДП
User 108543364
но это немного подрывает идеологию
11:27:14 ДП
User 152745946
почему?
11:27:38 ДП
User 108543364
ну если бы так можно было делать, я думаю в гайдах бы это упомянули :)
11:28:15 ДП
User 143141567
ну по идее же только контейнеры общаются со стором
11:28:23 ДП
User 143141567
а компоненты могут хранить в себе все что захотят
11:28:44 ДП
User 143141567
вот и получатся, что в сторе только те данные, которой нужно обмениваться
11:28:56 ДП
User 143141567
которыми*
11:30:53 ДП
User 143141567
вот есть кнопка, при нажатии на которую появляется форма, при повторном нажатии форма закрывается. И не обязательно сувать состояние кнопки в стор, если этим состоянием пользуется только одна кнопка. И наделайте кучу таких кнопок, каждая будет знать только про себя
11:34:37 ДП
User 152745946
не факт)
11:35:01 ДП
User 152745946
хотя у кнопки нет состояния
11:35:52 ДП
User 143141567
ну почему же, есть, active: true/false
11:36:03 ДП
User 143141567
если мы нажимаем, когда active:true скрываем форму
11:36:09 ДП
User 143141567
и наоборот, допустим
11:36:30 ДП
User 152745946
когда ты нажимаешь на кнопку срабатывает onClose/onCancel
11:38:23 ДП
User 143141567
ну это да, только выбор какой метод вызвать зависит от active, не думаю, что здесь действительно надо хранить это состояние в родителе и изменять его в том же onClose/onCancel
11:39:09 ДП
User 152745946
а если закрыть извне надо будет?
11:39:36 ДП
User 143141567
Тогда уже другой вопрос)
11:39:54 ДП
User 143141567
либо перенести на state выше, либо запихивать в стор
11:40:00 ДП
User 143141567
если родители разные, допустим
11:40:26 ДП
User 152745946
вот и получается, что каждое измнение - рефакторинг всего компонента
01:22:07 ПП
User 91585445
Народ, кто-нить знает, как в react-native запихнуть в Animated.Image потомка?
Дабы использовать по аналогии с 
<Image>
  <Text>
    foo
  </Text>
</Image>Сейчас при анимации изображения вылетает "Cannot read property 'style' of undefined" (
01:41:08 ПП
User 58948765
народ, кто может за денюжку провести небольшой ликбез по ssr и вебпаку часа за два-три?
01:46:32 ПП
User 23384802
@andrew_r да зачем за денежку. Пиши сюда. Чем сможем - поможем)
01:46:46 ПП
User 58948765
не, мне прям основательно надо с одним проектом подразобраться)
01:47:15 ПП
User 58948765
поэтому и думаю, может кому интересно будет этаким менторством заняться
01:59:04 ПП
User 60673894
@andrew_r  прочекай просто https://github.com/kriasoft/react-starter-kit  везде одно и тоже в принципе
01:59:16 ПП
User 60673894
смотря на чем бэк конечно)
01:59:36 ПП
User 58948765
прочекивание таких штук не даст понимание того, как это работает под капотом)
01:59:47 ПП
User 58948765
а разбираться самому долго
01:59:57 ПП
User 58948765
бэк нужен на ноде
02:00:07 ПП
User 58948765
express заюзать и все дела
02:04:20 ПП
User 60673894
Под прочекать, я имел ввиду просмотреть код. Ну что сделаешь, не все бывает быстро)
02:10:28 ПП
User 117372400
@andrew_r http://learn.javascript.ru/screencast/webpack
learn.javascript.ru/screencast/webpack
02:29:24 ПП
02:29:59 ПП
User 152745946
как считаете, такое норм?)
02:31:53 ПП
User 172831598
переходи на v15
02:32:10 ПП
User 309556
reactid. Никита. ты некрофил
02:32:34 ПП
User 152745946
да один злоебучий компонент не дает перейти:(
02:44:30 ПП
User 4627228
Какой?)
02:45:04 ПП
User 4627228
User 91585445
Народ, кто-нить знает, как в react-native запихнуть в Animated.Image потомка?
Дабы использовать по аналогии с 
<Image>
  <Text>
    foo
  </Text>
</Image>Сейчас при анимации изображения вылетает "Cannot read property 'style' of undefined" (
Спроси в @reactnative_ru
02:45:40 ПП
02:47:11 ПП
User 4627228
User 58948765
не, мне прям основательно надо с одним проектом подразобраться)
Смотрел мой доклад на эту тему? https://m.youtube.com/watch?v=PbK5xLmS0MU
youtube.com/watch?v=PbK5xLmS0MU&app=desktop
Продолжаем укреплять чувство вины у тех, кто посмел пропустил главное событие ноября в фронтэнд сообществе Москвы — November Tech Meetup, который мы целиком ...
02:47:46 ПП
User 58948765
User 4627228
Смотрел мой доклад на эту тему? https://m.youtube.com/watch?v=PbK5xLmS0MU
youtube.com/watch?v=PbK5xLmS0MU&app=desktop
Продолжаем укреплять чувство вины у тех, кто посмел пропустил главное событие ноября в фронтэнд сообществе Москвы — November Tech Meetup, который мы целиком ...
неа, сейчас гляну
02:48:09 ПП
02:48:14 ПП
User 1340580
@anorudes ХОРОШ МЕНЯ ИГНОРИТЬ :D
02:49:26 ПП
User 59690843
короч вопрос такой: я код писал-писал, делал коммиты, потом перезапустил сервер - естественно что-то там перекомпилилось, и теперь рендер на сервере не сходится с рендером на клиенте

каким простым образом можно этот дифф отловить?
02:50:47 ПП
User 59690843
User 59690843
короч вопрос такой: я код писал-писал, делал коммиты, потом перезапустил сервер - естественно что-то там перекомпилилось, и теперь рендер на сервере не сходится с рендером на клиенте

каким простым образом можно этот дифф отловить?
плюс у меня еще redux с routerом в нем, и главное что разметка не сходится только в пути "/", с остальными рутами все окей
02:51:25 ПП
User 59690843
User 152745946
в 15 версии столько мяса уже не будет
02:53:11 ПП
User 1340580
User 59690843
в 15 версии столько мяса уже не будет
Ну там, 1, 2, 3...
02:54:01 ПП
03:10:10 ПП
User 187710551
offtop чуток, в общем цель получить list[0].read = true но только на Ramda, вытащить и изменить элемент сделанно как смержить его обратно в лист
const mr = (target, source) => R.compose(R.merge(R.__, source), R.find(R.propEq('id', target.id)));
 const result = mr({id: 1, name: 'one'}, {read: true})(list);
03:11:01 ПП
User 1340580
вообщем ВООБЩЕМ В О О Б Щ Е М :DDD
03:11:40 ПП
User 64005178
User 1340580
вообщем ВООБЩЕМ В О О Б Щ Е М :DDD
o/
03:11:41 ПП
User 187710551
ой блин))
03:11:57 ПП
User 1340580
User 64005178
o/
\o
03:12:05 ПП
User 153807368
сделанно o/
03:12:19 ПП
03:12:55 ПП
User 153807368
там кровь должна вытекать из глаза)))
03:13:58 ПП
User 153807368
кстати, еще немного оффтопа
о/ - это чувак с поднятой рукой или кулак с оттопыренным большим пальцем?)
03:14:33 ПП
User 64005178
User 153807368
кстати, еще немного оффтопа
о/ - это чувак с поднятой рукой или кулак с оттопыренным большим пальцем?)
чо вы начинаете
03:14:39 ПП
User 64005178
я прост с бротюней поздаровался
03:15:20 ПП
03:15:26 ПП
03:20:49 ПП
User 187710551
у все с грамматикой отлично, а по теме что?
03:21:19 ПП
User 153807368
что такое ramda?
03:21:56 ПП
User 309556
одна ненужная либа
03:22:05 ПП
User 309556
естьб лодаш-фп
03:22:57 ПП
User 153807368
а ок, вижу
ответ на твой вопрос - ramda не нужен (=> @chicoxyzzy)
03:25:18 ПП
User 309556
ответ не нужен даже был
03:25:22 ПП
User 309556
он очевиден
03:25:32 ПП
User 309556
и вопрос не нужен
03:26:44 ПП
User 187710551
вообще ничего не нужно
03:28:07 ПП
User 187710551
@chicoxyzzy а на лодаш-фп как такое будет выглядеть?
03:28:37 ПП
User 309556
как у крутых хаскеледрочеров
03:29:06 ПП
User 309556
как рамда, только лодаш
03:29:16 ПП
03:29:25 ПП
User 309556
боль пичаль и все вот это
03:32:09 ПП
User 187710551
тут печалься не печалься а иммутабельность где брать
03:33:00 ПП
User 309556
иммутабельность оверрейтед
03:33:23 ПП
User 59690843
User 59690843
короч вопрос такой: я код писал-писал, делал коммиты, потом перезапустил сервер - естественно что-то там перекомпилилось, и теперь рендер на сервере не сходится с рендером на клиенте

каким простым образом можно этот дифф отловить?
нашел https://github.com/erikras/react-redux-universal-hot-example/issues/1078
github.com/erikras/react-redux-universal-hot-example/issues/1078
I've encountered a rather puzzling issue today, when a page reload yielded: Server-side React render was discarded. Make sure that your initial render does not contain any client-side code. Typ...
03:34:13 ПП
User 187710551
@chicoxyzzy что есть оверрейтед?
03:35:26 ПП
User 153807368
переоценено
03:43:37 ПП
User 4627228
Всё предрешено
03:43:37 ПП
User 59690843
Elm пушка же
04:00:22 ПП
User 309556
элм говно
04:04:16 ПП
04:09:55 ПП
User 68520717
http://palmeral.github.io/min/
04:30:48 ПП
User 4627228
Ждём браузера от Facebook
04:46:15 ПП
User 99494833
User 4627228
Ждём браузера от Facebook
Приложение facebook
04:46:29 ПП
User 99494833
Остальной интернет не нкжен))
04:49:37 ПП
User 153807368
меня одного достает HMR: "The following modules couldn't be hot updated: (Full reload needed)..." на некоторых компонентах/роутах?
пока все попытки починить были тщетны
05:00:36 ПП
User 4627228
А ты что используешь? transform или HMR3?
05:06:30 ПП
User 153807368
react-transform/react-transform-hmr/вот это все
05:10:26 ПП
User 153807368
за наводку спасибо, буду следить за HMR3
05:20:37 ПП
User 131143860
User 153807368
меня одного достает HMR: "The following modules couldn't be hot updated: (Full reload needed)..." на некоторых компонентах/роутах?
пока все попытки починить были тщетны
Дада, в какой-то момент у меня тоже все сломалось и так это взбесило что забросил проект даже (
05:38:46 ПП
User 153807368
Из того что знаю:
- hmr не дружит с декораторами
- вроде как не дружит со stateless func components
- возможно также не дружит с react-router в некоторых ситуациях
05:38:46 ПП
User 153807368
Времени к сожалению не было до сих пор чтобы как следует покопаться. Гугл, стаковерфло и гитхаб очень мало инфы содержит
05:38:46 ПП
User 153807368
Имхо или ждать hmr3 или заныривать с дебагером во всю эту кухню
05:43:31 ПП
User 4627228
Декораторы это вообще не зло ли?
05:44:10 ПП
User 152745946
а функции зло?))
05:44:29 ПП
User 152745946
это же обычная карированная функция
05:44:31 ПП
User 4627228
HMR должен дружить SFC
05:45:10 ПП
User 152745946
SFC - что это?
05:45:25 ПП
User 4627228
Я поэтому и говорю, нужен ли syntax sugar для обычного каррирования?
05:45:32 ПП
User 4627228
Stateless Function Components
05:45:47 ПП
User 4627228
Парни, вопрос недели. Какой браузер стоит внутри Tesla?
05:46:04 ПП
User 4627228
Заказчик попросил адаптировать проект для Tesla :)
05:48:11 ПП
User 152745946
попроси у заказчика тестовый экземпляр)))
05:48:16 ПП
User 12791
наверное IE6 :)
05:49:52 ПП
User 12791
https://forums.teslamotors.com/forum/forums/tesla-model-s-web-browser-capabilities
forums.teslamotors.com/forum/forums/tesla-model-s-web-browser-capabilities
UPDATED FOR v5.9 (1.51.94) ON 4/8/14
05:53:50 ПП
User 4627228
AppleWebKit/533.3
05:53:57 ПП
User 4627228
Наверное так
05:57:15 ПП
User 4627228
Хотя вроде там Android
06:09:44 ПП
User 4627228
AppleWebKit/533.3 ~= iOS 4
06:34:10 ПП
User 4627228
http://www.russiancodecup.ru/ru/?utm_source=email&utm_medium=ALL_IT&utm_campaign=rcc2016
russiancodecup.ru/ru
Russian Code Cup - крупнейшая в России ежегодная открытая олимпиада для самых сильных программистов. Общий призовой фонд составляет 750 тыс. рублей. Предварительные этапы олимпиады проходят онлайн (28 марта, 25 апреля, 31 мая и 14 июня), а финал - в Москве (19 сентября). В 2015 г. соревнование пройдет уже в пятый раз. В первом Russian Code Cup приняли участие более 3 000 человек. Первый тур весеннего Russian Code Cup состоится 28 марта. Чтобы принять участие, нужно зарегистрироваться на сайте http://russiancodecup.ru
07:08:06 ПП
User 59690843
User 12791
https://forums.teslamotors.com/forum/forums/tesla-model-s-web-browser-capabilities
forums.teslamotors.com/forum/forums/tesla-model-s-web-browser-capabilities
UPDATED FOR v5.9 (1.51.94) ON 4/8/14
черт, вот теперь нужно Теслу покупать, чтоб SPA тестировать
07:08:33 ПП
User 12791
лучше VM с TeslaOS поднять :)
07:08:53 ПП
User 59690843
User 12791
лучше VM с TeslaOS поднять :)
да ну ты что, это как айфон в эмуляторе ж)
07:12:50 ПП
User 104477
Тесла в докере разгоняется до сотки еще быстрее
07:13:36 ПП
User 152745946
час пишешь - два катаешься, тестишь)
07:19:02 ПП
User 59690843
User 152745946
час пишешь - два катаешься, тестишь)
@ 
4 часа ищешь куда делся автор одной из 50 депенденси проекта, почему он не сделал npm publish с багфиксом, когда остальные либы давно обновились
07:27:09 ПП
User 86311207
Вопрос для тех кто игрался/работает c MobX. Как вы прокидываете свои сторы? Просто прокидывать пропсами не очень удобно - Vanila React variant. В Redux с его Compose все очень секси, но тут такого еще нету c коробки. Кто как решает эту проблему? Я понимаю что можно все кинуть контекстом самому или заюзать нечто подобное - https://github.com/nightwolfz/mobx-connect или https://github.com/amsb/mobx-reactor, но интерестно еще что думают тут по этому поводу?
07:31:04 ПП
User 86311207
Есть еще правда вариант на плодить синглтонов)
10:36:24 ПП
User 1191210
оч интересно
11:27:07 ПП
User 4627228
Мне на React Amsterdam по этой теме слайды Михаила :) понравились https://speakerdeck.com/mweststrate/state-management-is-easy-introduction-to-mobx
speakerdeck.com/mweststrate/state-management-is-easy-introduction-to-mobx
State is the heart of each application and there is no quicker way to create buggy, unmanageable applications then by producing inconsistent state. Hence many state management solutions try to restrict the ways in which you can modify state, for example by making state immutable. But this introduces new problems; data needs to be normalized, referential integrity can no longer be guaranteed and it becomes next to impossible to use powerful concepts like prototypes. At Mendix these restrictions where unacceptable and so MobX was born. MobX makes state management simple again by addressing the root issue: it makes it impossible to produce an inconsistent state. This makes state management simple and scalable again.