@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 21 апреля 2016 г.

06:17:39 ДП
06:18:09 ДП
User 4627228
Кто будет победителем и зальет 6000-й коммит?)
08:30:27 ДП
User 4627228
В свете того, что группы по React.js и DevOps зарекомендовали себя с очень положительной стороны, принял решение создать аналогичную группу по третье горячей и набирающей оборот теме - Angular 2 (+ прошлые версии).

Информации становится слишком много. Группы в Telegram способны очень хорошо решить эту проблему.

Лайфхак - отключить уведомления и можно даже иногда пропускать сообщения. Но когда появляется вопрос по какой-то теме - делаешь поиск по истории чата и за секунду находишь людей, которые это обсуждали. И либо находишь ответ на вопрос, либо поднимаешь тему снова, указывая их. Либо пишешь им в личку и решаешь вопрос.

https://telegram.me/angular_js
telegram.me/angular_js
Общаемся и обсуждаем темы, посвященные Angular 1.x и экосистеме. См. также: @react_js, @js_ru, @javascript_jobs Рекомендуем сразу отключить уведомления, чтобы пребывание в данном чате было полезным и комфортным. Sponsored by www.startup-makers.com
08:43:18 ДП
User 83690375
вот группа с Ангуляром - вообще крутяк! спасибо
08:43:54 ДП
User 108543364
сделайте еще по DBA
08:56:16 ДП
User 120407271
Из https://medium.com/@sapegin/react-amsterdam-2016-20e1052b09f1#.a4sqfvrc0

Good component names: <Card />, <Headline />, <Headline level={1} />, <Link />.
Bad component names: <ImageCard />, <StoryTitle />, <MasterHeadline />, <StoryLink />.

Универсальные компоненты с внутренней логикой - level={1} конечно круто, но всё же, порой не айс.
medium.com/@sapegin/react-amsterdam-2016-20e1052b09f1
My notes on React Amsterdam, the first conference about React in Amsterdam, Netherlands.
08:56:32 ДП
User 4627228
User 108543364
сделайте еще по DBA
Да пожалуйста :) https://telegram.me/dba_ru
telegram.me/dba_ru
Общаемся и обсуждаем темы, посвященные DBA, PostgreSQL, Redis, MongoDB, MySQL, neo4j, riak и т.д. См. также: @devops_ru, @kubernetes_ru, @docker_ru, @nodejs_ru Рекомендуем сразу отключить уведомления, чтобы пребывание здесь было полезным и комфортным.
08:59:21 ДП
User 4627228
Вот спасибо =^_^=
09:06:55 ДП
User 1340580
Упс, не тот чатик.
09:08:18 ДП
User 1340580
Когда же уже будет функция пинить чатики, задолбало, прыгает все.
09:14:32 ДП
User 4627228
Парни из ITSumma кастомизировали клиент Telegram для службы поддержки, чтобы не прыгали чаты: http://www.itsumma.ru/blog/4/
itsumma.ru/blog/4
Советы и мысли по поддержке, оптимизации, организации отказоустойчовсти, резервному копированию веб-проектов
09:19:28 ДП
User 990107
Работал с парнями из ITSumma по одному из проектов, они как раз начинали тогда активно вводить техподдержку через Телеграм. Могу рекомдендовать, отлично себя показали.
09:20:57 ДП
User 4627228
Да, отличные ребята. Мы с Женей как раз на прогонах докладов к Highload 2015 познакомились. Они обещают его заопенсорсить скоро.
09:45:18 ДП
User 196895
чят, у spb_frontend есть свой чят?
09:53:13 ДП
User 213704994
А кто как сайд-эффекты контролирует (redux)?
redux-thunk, redux-saga, redux-loop, smthgelse
09:55:51 ДП
User 4627228
Если быть честным, сайд-эффекты - это особенность мышления. Их сложно контролировать инструментами. ) Однако, redux-saga пока больше всем нравится.
09:57:50 ДП
User 213704994
Да, "контролировать", в данном случаи - это не совсем точный термин )
10:06:28 ДП
User 171203444
User 196895
чят, у spb_frontend есть свой чят?
в слаке есть
10:06:43 ДП
User 196895
User 171203444
в слаке есть
в слаке не комильфо
10:06:46 ДП
User 171203444
а нодовский чятик есть?
10:07:01 ДП
User 196895
нодовский было бы хорошо кстати
10:07:23 ДП
10:10:17 ДП
User 4627228
pro.js про ноду
10:12:52 ДП
User 171203444
линк дайте плиз
10:13:24 ДП
User 4627228
/JSlang :)
10:13:31 ДП
10:13:32 ДП
10:13:40 ДП
User 196895
https://telegram.me/JSlang
telegram.me/JSlang
JavaScript, NodeJS для профи For #noobs: @js_noobs_ru Invite: https://t.me/joinchat/Be4rsT5Rsgq30DHutjxXgA Правила: http://telegra.ph/ru-chat-rules-06-19 Вакансии только с ЗП, не чаще раза в неделю.
10:14:00 ДП
User 196895
только там канал тихий. намного тише чем этот
10:17:04 ДП
User 1682650
кто нибудь новую версию redux-form пробовал?
10:19:17 ДП
User 171203444
Пока нет
10:19:26 ДП
10:19:35 ДП
10:19:37 ДП
10:19:38 ДП
10:28:16 ДП
User 4627228
redux-form радует своей активностью)
10:28:56 ДП
User 1682650
да, но предыдущую версию пришлось выкинуть и писать свое
10:30:18 ДП
User 4627228
Сликшом opinionated ?
10:30:39 ДП
User 1682650
очень не удобные на больших формах
10:30:44 ДП
User 1682650
плюс просто тыща багов
10:30:58 ДП
10:31:15 ДП
User 4627228
Мне так тоже показалось, когда ещё первый раз прочитал код
10:33:25 ДП
User 33682121
это перекат скайп чата?
10:33:27 ДП
User 33682121
всем привет
10:35:39 ДП
User 1682650
они интересную концепуию предлагают привязки полей к стейту. но не знаю на сколько она хороша в деле
10:40:25 ДП
User 101934369
User 33682121
это перекат скайп чата?
Здесь уже больше чем в скайпе
10:40:41 ДП
10:45:07 ДП
10:45:24 ДП
User 196895
всё? убунта вышла?
10:45:52 ДП
User 4627228
Это в девопс чатик)
10:47:08 ДП
User 196895
откуда тогда столько радости? )
10:53:44 ДП
10:53:57 ДП
10:56:07 ДП
User 4627228
Итак, мы преодолели отметку в 300. Отлично.
10:56:34 ДП
User 171203444
То чувство, когда реакт программистов, больше чем js
10:56:41 ДП
User 4627228
Именно :)
10:59:00 ДП
User 4627228
Итак, весь список русскоязычных чатов в Telegram по JavaScript, DevOps и DBA на данный момент:

+ https://telegram.me/react_js
+ https://telegram.me/angular_js
+ https://telegram.me/jslang
+ https://telegram.me/devops_ru
+ https://telegram.me/dba_ru
+ https://telegram.me/nodejs_ru

Теперь пора заниматься делами. :)
11:00:52 ДП
User 63637623
User 4627228
Итак, мы преодолели отметку в 300. Отлично.
ещё бы, заспамил все чаты, чего удивляться... ))
11:01:32 ДП
User 4627228
В надежде удалить Gitter и забыть про него :)
11:01:47 ДП
User 33682121
Давно пора было
11:01:49 ДП
User 63637623
gitter тяжёлый, да
11:02:19 ДП
User 1682650
User 171203444
То чувство, когда реакт программистов, больше чем js
ахаха. в жизни так и есть. не все реакт программисты являются js программистами) да и вообще не всегда являются программистами)
11:02:52 ДП
User 63637623
по флаксу сюда ведь тоже норм писать?
11:03:50 ДП
11:03:54 ДП
User 4627228
Про Redux / Flux / Relay тоже здесь всё
11:07:46 ДП
User 171203444
User 1682650
ахаха. в жизни так и есть. не все реакт программисты являются js программистами) да и вообще не всегда являются программистами)
вспоминается мем со стаковерфлоу про сложение чисел
11:07:46 ДП
User 63637623
Хочу для разминки обсудить почти классическую проблемку, послушать мнения других

Есть UserStore, есть OrdersStore. Запрос к серверу для получения orders работает только при авторизованном юзере. Юзер авторизуется необязательно в момент открытия приложения, а теоретически в любой момент.

Задача — как только сделан успешный запрос на юзера и юзер сохранён в UserStore (регистрация или логин), — сделать запрос на orders и сохранить их в OrdersStore.

Как правильно "связать" эти события? В каком месте "слушать" авторизацию пользователя, чтобы инициировать запрос на orders?
11:09:35 ДП
User 1682650
все зависит конечно от конкретной реализации флукса которую ты используешь, но кажется наиболее логично пользоваться промисами
11:10:21 ДП
User 1682650
или если ты можешь подписаться на событие удачного получения юзера(не редукс), то в этом хендлере отправлять запрос на получение заказов
11:10:24 ДП
User 63637623
вот промисы — как раз не по флаксу
Но даже если с помощью них — в какое место их засунуть? :)
11:10:47 ДП
User 1682650
гусары молчать
11:11:23 ДП
User 27532125
http://codepen.io/towc/pen/wGjXGY
codepen.io/towc/pen/wGjXGY
That's definitely a wrong rapresentation of a NN, but it looks cool :D Click to generate a new structure...
11:13:51 ДП
User 1682650
мне сложно сказать в каком месте конкретно в твоем проекте, но если грамотно все спроектировано, то должна быть возможность получить промис запроса к юзерам или должна быть какая то абстракция над этими промисами
11:14:36 ДП
User 63637623
User 1682650
или если ты можешь подписаться на событие удачного получения юзера(не редукс), то в этом хендлере отправлять запрос на получение заказов
вот это ближе, но опять же, "события"? :) это не из мира флакса. Или ты предлагаешь типа на "USER_RECEIVE" у диспатчера подписаться?
11:15:20 ДП
User 1682650
если ты можешь подписаться на него, то конечно почему бы нет. В редуксе просто это считается не модным патерном :_
11:15:46 ДП
User 63637623
Сторы должны слушать экшны, и никто больше
11:16:02 ДП
User 63637623
Иначе это в pub/sub превращается
11:16:07 ДП
User 1682650
на крайняк всегда можно в каком нибудь компоненте в componentWillReceiveProps  проверять изменения пропса userId или какого нибудь еще и если понимаешь, что юзер изменился, запрашивать заказы. но имхо это не красиво
11:16:25 ДП
User 1682650
ну вот если у тебя есть ограничения что кто то что то "должен", тогда да :)
11:17:10 ДП
User 1682650
но за время работы с этими всякими флуксами я понял, что никто ничего никому не должен, потому что это все на столько молодо, что просто не может быть реальных best practice
11:17:20 ДП
User 63637623
User 1682650
ну вот если у тебя есть ограничения что кто то что то "должен", тогда да :)
по-моему вся суть флакса в подобных ограничениях, которые в перспективе идут на пользу понятности происходящего
11:18:36 ДП
User 1682650
так то да, но эти ограничения нужно двигать под себя, потому что это уже какое то программирование ради парадигм, а не ради задачи получается
11:18:44 ДП
User 1682650
поэтому не вижу ничего плохого в pub/sub
11:19:18 ДП
User 63637623
User 1682650
на крайняк всегда можно в каком нибудь компоненте в componentWillReceiveProps  проверять изменения пропса userId или какого нибудь еще и если понимаешь, что юзер изменился, запрашивать заказы. но имхо это не красиво
снова чуть ближе, только componentWillReceiveProps не то, конечно, если уж делать подобное из компонента, то это задача компонента-контейнера, который (в идеале) не имеет пропсов. Верно? )
11:20:14 ДП
User 39182759
>в перспективе идут на пользу понятности происходящего
в теории.
11:20:26 ДП
User 1682650
так, наверное я уже подзабыл, что имеется ввиду под контейнером в классическом флуксе :)
11:21:23 ДП
User 1682650
если твой стор не обновляет пропсы у контейнера, то он все равно же дергает какой то хендлер когда что то изменяется в сторе? вот там вот можно делать что угодно если нужно
11:21:33 ДП
User 1682650
как запасной вариант, потому что по мне это не красиво
11:21:53 ДП
User 63637623
User 1682650
так, наверное я уже подзабыл, что имеется ввиду под контейнером в классическом флуксе :)
хех, примерно то же самое, что в "неклассическом" ))
11:25:34 ДП
User 1682650
ну в рудусе, стор отправляет новые пропсы в контейнер, поэтому как раз componentWillReceiveProps место где можно отслеживать изменения стора
11:29:15 ДП
User 63637623
User 1682650
если твой стор не обновляет пропсы у контейнера, то он все равно же дергает какой то хендлер когда что то изменяется в сторе? вот там вот можно делать что угодно если нужно
Мысль примерно понятна, и да, так сделать можно.

Но вопрос-то не в том "как блин это вообще сделать", а как это сделать "канонично" флаксу. Если кто-то считает, что "флакс неидеален / не нужен" — предлагаю с этого начинать ответ. На мой взгляд имплементации флакса хоть и неидеальны, концепция у него крутая и стоит того, чтобы стараться её везде придерживаться.
11:31:16 ДП
User 153807368
Насчет форм, если кому надо. Годная, простая, кастомизируемая и интуитивно понятная реализация:
https://jquense.github.io/react-formal/docs
11:31:48 ДП
User 63637623
---------------
Ещё возможно, что кому-то ситуация в задачке кажется неоправданной, и потому не хочется её "подгонять" под каноничное решение.

Поэтому я намекну, в какую сторону (на мой взгляд) стоит начать думать. Первый правильный вопрос, который должен возникнуть — какого черта это orders вообще не приходят вместе с юзером, если они так нужны, когда юзер авторизовался? :)
11:31:49 ДП
User 153807368
Плюс там же у него есть еще клевые react-widgets
https://github.com/jquense/react-widgets
github.com/jquense/react-widgets
An à la carte set of polished, extensible, and accessible inputs built for React - jquense/react-widgets
11:33:13 ДП
User 39182759
>какого черта это orders вообще не приходят вместе с юзером, если они так нужны, когда юзер авторизовался? :)

Если юзер нужен на всех роутах, а заказы - только на одном, это логично:)
11:34:02 ДП
User 63637623
User 1682650
ну в рудусе, стор отправляет новые пропсы в контейнер, поэтому как раз componentWillReceiveProps место где можно отслеживать изменения стора
в редаксе в качестве контейнера как правило используют .connect(), метод в котором так и называется — map*State*ToProps — так что контейнер не получается пропсы, он берет state из стора. И передаёт уже пропсы.
11:35:24 ДП
User 1682650
контейнером в редаксе обычно называется компонент, который оборачиватся в connect
11:35:30 ДП
User 63637623
User 39182759
>какого черта это orders вообще не приходят вместе с юзером, если они так нужны, когда юзер авторизовался? :)

Если юзер нужен на всех роутах, а заказы - только на одном, это логично:)
@Vogre вот если бы было именно так, то как бы ты решил? Учитывая, опять же, что делать запрос на orders можно только после авторизации юзера.
11:36:11 ДП
User 1682650
в map*State*ToProps ты не можешь следить за изменениями, потому что там недоступно предыдущее состояние и там ты не можешь рейзить новые экшены
11:37:10 ДП
User 63637623
User 1682650
контейнером в редаксе обычно называется компонент, который оборачиватся в connect
неа, connect это higher order component (то есть контейнер), который передаёт пропсы presentational компонентам
11:39:19 ДП
User 1682650
можно и так сказать. я не готов спорить о терминологии, потому что она так же молода как и концепция :)
11:40:21 ДП
User 1682650
но факт остается фактом, что mapStateToProps не поможет в решении задачи, потому что в ней нет предыдущего стейта приложения(то есть нельзя отследить, что изменился изер) и нельзя диспатчить экшен(то есть нельза запросить заказы)
11:43:01 ДП
User 39182759
я не использую флакс в этих местах.
У меня все условные экшнкреейторы возвращают промисы.
То есть у меня будет в том коде, где я использую флакс 
componentDidMount(){
    fetchUser()
       .then(fetchOrders)
       .then(()=>...UserStore.getUser()...OrderPageStore.pages...)
} // fetchUser и fetchOrders - экшнкреейторы

Но я повторюсь, я не использую редакс и у меня самописный флакс в проекте и вообще я от него отказываюсь потихоньку и ухожу в фрп:)
11:43:09 ДП
User 63637623
User 1682650
но факт остается фактом, что mapStateToProps не поможет в решении задачи, потому что в ней нет предыдущего стейта приложения(то есть нельзя отследить, что изменился изер) и нельзя диспатчить экшен(то есть нельза запросить заказы)
Ага. Верно. Только в том и дело, что по флаксу не надо "следить", особенно в компонентах. Всю логику по изменению состояния берут на себя store, которые оповещают слушателей, если че-то изменилось. Контейнеру как раз нечего следить за тем, что там раньше было (хотя флаксовский контейнер всё же даёт prevState при подсчёте нового стейта https://facebook.github.io/flux/docs/flux-utils.html#container)
11:44:15 ДП
User 63637623
User 39182759
я не использую флакс в этих местах.
У меня все условные экшнкреейторы возвращают промисы.
То есть у меня будет в том коде, где я использую флакс 
componentDidMount(){
    fetchUser()
       .then(fetchOrders)
       .then(()=>...UserStore.getUser()...OrderPageStore.pages...)
} // fetchUser и fetchOrders - экшнкреейторы

Но я повторюсь, я не использую редакс и у меня самописный флакс в проекте и вообще я от него отказываюсь потихоньку и ухожу в фрп:)
@Vogre  Вот я так тоже было сделал. Но передумал потом — промисы в таком виде нарушают односторонний поток данных по флаксу.
11:44:29 ДП
User 1682650
ну я так и сказал с самого начала, что это возможно сделать при любой реализации флукса, но мне так не нравится
11:46:11 ДП
User 171026916
Настроил boilerplate. Команда Webpack выдаёт сборку правильно в директорию. А node server.js на основе express хер знает куда его кидает
11:46:25 ДП
User 39182759
не, не нарушает, потому что данные-то все равно идут сверху вниз.
11:46:49 ДП
User 39182759
считай, что это просто способ вызвать несколько экшнов подряд
11:47:27 ДП
User 171026916
Хотя и там и там Webpack отрабатывает по статусу в консоли
11:48:08 ДП
User 171026916
Что может быть?
11:49:01 ДП
User 171026916
Localhost:3000/public/bundle.js выдаёт файл
11:49:20 ДП
User 171026916
А самого файла нет в директории проекта
11:49:45 ДП
User 171026916
Черт побери)
11:51:01 ДП
User 63637623
User 39182759
считай, что это просто способ вызвать несколько экшнов подряд
Ок, идём дальше :) Теперь получается, что один и тот же компонент запрашивает и пользователя, и orders — по сути несвязанные сущности. 

К тому же, что будет, если на момент этого componentDidMount пользователь уже был авторизован? Уйдет повторный запрос? Или .fetchUser() должен сохранить какой-то промис и вернуть его тут, если запрос уже был?
11:52:05 ДП
User 39182759
1) ну да. может и связанные, это же заказы пользователя.
2) фетчюзер конечно должен сохранять промис
11:54:26 ДП
User 63637623
А по-моему сохранять промис не дело экшна, хоть так и можно, да. Опять же получается, что source of truth в разных местах — и в сторе, и в экшне.

Но тут можно обыграть, что fetchUser спрашивает у стора, есть ли уже пользователь, и если да, то просто делает Promise.resolve(). Суть та же, но зато не надо хранить промис.
12:01:12 ПП
User 151230728
Коллеги - ищу докладчиков на DevConf 2016 http://devconf.ru/ru/offers/js - может кого посоветуете?
12:06:44 ПП
User 151893222
У кого есть опыт рендеринга реакта на сервере? =))) Поделитесь опытом тюнинга производительности, съедает процессор на 200rps.
12:08:37 ПП
User 75801717
может нужен тюнинг кода?
12:08:54 ПП
User 63637623
вот, смотреть ) https://www.youtube.com/watch?v=PnpfGy7q96U&list=LL8JsR9Edm14iuqQHd041baQ&index=8
12:08:57 ПП
User 151893222
Код довольно простой.
12:09:21 ПП
User 63637623
@vadim zhulanov ссылка выше тебе
12:11:19 ПП
User 39182759
а кто-нить юзал https://github.com/Producters/express-crawler-snapshots ?
github.com/Producters/express-crawler-snapshots
express-crawler-snapshots - express middleware that detects search engine bots and prerenders page on the server, returning static html
12:11:44 ПП
User 39182759
я для своей хобби-приложухи втемяшил, вроде норм позволяет на фб шарить
12:12:45 ПП
User 39182759
5 минут - и изоморфное приложение не нужно:)
12:28:53 ПП
User 151230728
У кого есть аккаунт на Хабре - поддержите плиз плюсиком - https://habrahabr.ru/company/devconf/blog/282151/ хочется набрать побольше интенесных докладчиков.
habrahabr.ru/company/devconf/blog/282151
Пьешь свой смузи в коворкинге? Зарылся в коде в офисе? Не проспи главное событие этого лета! Разработчики, фронтэндеры, девопсы — приглашаем принять участие в...
12:34:11 ПП
User 38673908
я вот подумал
12:34:13 ПП
User 38673908
а зачем этот чат
12:34:15 ПП
User 38673908
если есть гиттер?
12:34:19 ПП
User 38673908
gitter.im/dev-ua/reactjs
gitter.im/dev-ua/reactjs
We <3 React.js
12:34:58 ПП
User 4627228
Выше обсуждали, почему Gitter умер)
12:35:13 ПП
User 63637623
никуда он не умер ))
12:35:31 ПП
User 4627228
User 151893222
У кого есть опыт рендеринга реакта на сервере? =))) Поделитесь опытом тюнинга производительности, съедает процессор на 200rps.
Вот здесь я что-то рассказывал на эту тему https://www.youtube.com/watch?v=PbK5xLmS0MU
youtube.com/watch?v=PbK5xLmS0MU
Продолжаем укреплять чувство вины у тех, кто посмел пропустил главное событие ноября в фронтэнд сообществе Москвы — November Tech Meetup, который мы целиком ...
12:37:50 ПП
User 309556
гиттер умер? это реакт умер)
12:38:08 ПП
User 153807368
Гиттер не нужен
12:38:12 ПП
User 309556
глиммер2 вышел. виртульный дом — тлен
12:38:23 ПП
User 99494833
User 63637623
никуда он не умер ))
На мобилах он на основе браузера. Лучше уж слак. Но в нем необходимо в каждом слеке регаться
12:46:31 ПП
User 309556
он везде на основе браузера
12:46:39 ПП
User 309556
слак тоже везде на основе браузера
12:48:10 ПП
User 309556
и айтюнс и апп стор тоже
12:48:20 ПП
User 309556
половина ос х на основе браузера
12:49:35 ПП
User 99494833
User 309556
слак тоже везде на основе браузера
На андроиде он вполне нативен
12:50:54 ПП
User 309556
если считать нативными веб вью
12:51:12 ПП
User 309556
все перечисленное выше — тогда тоже нативное вполне
12:51:37 ПП
User 152745946
главное не на чем, а как написано
12:52:00 ПП
User 152745946
нативное может жрать батарейку не хуже электрона
12:52:09 ПП
User 309556
о, привет. да, гиттер через жопу написан, но там есть определенные плюсы
12:52:22 ПП
User 309556
dev-ua не просто так его выбрали
12:52:45 ПП
User 309556
https://gist.github.com/listochkin/c81c198a2b7b044a0dc5
gist.github.com/listochkin/c81c198a2b7b044a0dc5
12:53:17 ПП
User 152745946
привет. Разработка чатика не простая задача так-то) Поэтому все чатике в чем-то плохи
12:56:04 ПП
User 152745946
var foo = bar;
12:56:20 ПП
User 152745946
код скидывать можно, но без подсветки, видимо
12:56:46 ПП
12:57:37 ПП
User 68520717
var foo = 'q'
12:58:36 ПП
User 68520717
без подстветки, но хотя бы с форматированием
12:59:12 ПП
User 57505983
Тут, скорее, не форматирование, а моноширинный шрифт.
12:59:32 ПП
User 162236709
User 68520717
var foo = 'q'
bold не обязательно использовать
01:00:01 ПП
User 68520717
@gllwy а как ещё получить поддержку маркдауна?
01:00:11 ПП
User 162236709
бэктики и без бота есть
01:00:15 ПП
User 162236709
остальное с ботом только
01:00:32 ПП
User 68520717
var foo = 'bar';
01:00:35 ПП
User 162236709
User 162236709
бэктики и без бота есть
(на телефонах вроде нет)
01:00:36 ПП
01:01:18 ПП
User 57505983
var foo = 'bar';
01:05:06 ПП
User 656567
используйте бота на мобильном
01:09:23 ПП
User 27532125
let tree = new BinaryTree('a',
new BinaryTree('b',
new BinaryTree('c'),
new BinaryTree('d')),
new BinaryTree('e'));
for (let x of tree) {
console.log(x);
}
02:32:19 ПП
User 23384802
Однако у телеграмма ест большой минус. Если пришло новых 300 сообщений, ты прочитал 20 из них, поменял канал и вернулся назад, то тебя кинет в самый конец. Или может проблема лишь веб интерфейса
02:35:30 ПП
User 38228256
Не, в аппе тоже самое
02:36:02 ПП
User 38228256
Тоже периодически раздражает
02:44:55 ПП
User 4274761
и он все сообщения загружает. не открывал пару дней на телефоне телеграм с активными чатами — при следующем запуске получи загрузку сотни тысяч сообщений через бедный мобильный интернет
02:46:57 ПП
User 99494833
User 4274761
и он все сообщения загружает. не открывал пару дней на телефоне телеграм с активными чатами — при следующем запуске получи загрузку сотни тысяч сообщений через бедный мобильный интернет
Не , вроде не так. Последнее кое какое количество грузит
02:47:56 ПП
User 4274761
User 99494833
Не , вроде не так. Последнее кое какое количество грузит
ну, видимо, это достаточно больщое последнее количество) десктоп-клиент умудряется зависать при этом
02:48:14 ПП
User 4274761
но чат вообще не о том)
02:48:43 ПП
User 1340580
User 23384802
Однако у телеграмма ест большой минус. Если пришло новых 300 сообщений, ты прочитал 20 из них, поменял канал и вернулся назад, то тебя кинет в самый конец. Или может проблема лишь веб интерфейса
Так и на мобильных.
02:51:07 ПП
User 4274761
как в реакте реализуется анимированное удаление? (да и другие операции, когда хочется не просто изменить структуру, а сделать это красиво)
02:51:42 ПП
User 4274761
есть контейнер и тыща элементов. удаляю полтыщи, добавляю полтыщи. он же просто их заменит?
02:51:44 ПП
User 1340580
User 4274761
как в реакте реализуется анимированное удаление? (да и другие операции, когда хочется не просто изменить структуру, а сделать это красиво)
https://aerotwist.com/blog/flip-your-animations/#the-general-approach
aerotwist.com/blog/flip-your-animations
Animations in your web app should run at 60fps. Not always easy to achieve that,and it really depends on what you're trying to do, but I'm here to help. With FLIP.
02:53:05 ПП
User 1340580
User 4274761
как в реакте реализуется анимированное удаление? (да и другие операции, когда хочется не просто изменить структуру, а сделать это красиво)
Пример перестановки. В первой ссылке описание как это работает.
https://github.com/joshwcomeau/react-flip-move
github.com/joshwcomeau/react-flip-move
react-flip-move - Effortless animation between DOM changes (eg. list reordering) using the FLIP technique.
03:14:02 ПП
User 23384802
User 4274761
как в реакте реализуется анимированное удаление? (да и другие операции, когда хочется не просто изменить структуру, а сделать это красиво)
можно пользоваться ReactCSSTransitionGroup
03:14:04 ПП
User 23384802
там все просто
03:14:28 ПП
User 23384802
практически также как в ангуляре 1)
03:22:33 ПП
User 45107737
если FLIP всё время дёргает layout — надо его завернуть в fastdom
03:24:33 ПП
User 4274761
ух ты, devgru!) привет)
03:24:39 ПП
User 4274761
спасибо за линки, буду пробовать
03:24:48 ПП
User 45107737
привет, Хломзя)
03:29:07 ПП
User 89478045
Коллеги, кто нибудь юзал redux-orm или имеет свое мнение по этому поводу?
03:29:55 ПП
User 89478045
Именно сам подход
04:32:06 ПП
User 4627228
https://code.facebook.com/posts/597378980427792/react-native-a-year-in-review/
code.facebook.com/posts/597378980427792/react-native-a-year-in-review
After just one year in the open source community, React Native has changed the way developers build on every major platform.
04:42:19 ПП
User 309556
orm или form?
05:05:08 ПП
User 181923858
Ребят, подскажите что может быть. Обновляю страницу на которой например 5 картинок, все картинки отображаются. Прехожу на страницу без полной перезагрузки, через react-router картинки загружаются не все, и появляются все минуты через 2. Данный эффект замечаю только с мобильника.
05:05:42 ПП
User 181923858
В браузере видно что ожидает ответа от сервера
05:05:53 ПП
User 181923858
И так 2 минуты ждёт
05:11:41 ПП
User 23384802
может они весят по 10 метров  в пнг каждая) 
05:12:17 ПП
05:12:25 ПП
User 181923858
Дело не в размере
05:12:31 ПП
User 181923858
Просто тупо браузер ждёт
05:12:43 ПП
User 181923858
Картинки по 5 кб
05:12:54 ПП
05:23:58 ПП
05:34:46 ПП
User 4627228
Отключили нотификацию для чатов, но бесит показ бейджа о непрочитанных сообщениях? Это можно отключить - http://prnt.sc/auzgll
prnt.sc/auzgll
Captured with Lightshot
05:46:03 ПП
User 1754343
о, спасибо!
05:46:54 ПП
User 196895
+1 спасибо, круто
06:19:13 ПП
User 309556
если кто не в курсе, на следующем МоскоуЖС Слава Слинько будет рассказывать про Релей
06:19:32 ПП
User 309556
так что бегом региться (если еще есть места)
06:20:24 ПП
User 57505983
Всем привет. Скажите, а здесь уже все матёрые с реактом или вопросы от новичков уместно задавать?
06:20:39 ПП
User 196895
вопросы всегда уместны
06:21:02 ПП
User 57505983
Ясно, спасибо :)
06:22:45 ПП
User 309556
регистрация уже закрыта, да.
https://moscowjs.timepad.ru/event/319352/
насчет того, будет ли трансляция, честно говоря, не знаю
moscowjs.timepad.ru/event/319352
Встреча JavaScript разработчиков Москвы. Доклады и, конечно, неформальное общение. Наш сайт: moscowjs.ru
06:24:18 ПП
06:24:19 ПП
User 309556
зато знаю где будет афтепати
06:42:23 ПП
User 309556
привет, Вася
06:42:31 ПП
User 4627228
Есть лайхак для MoscowJS, если не успел зарегистрироваться - приходишь минут за 30 до начала и редставляешься Андреем Саломатиным. :)
06:42:33 ПП
User 309556
привет, Вова
06:42:42 ПП
User 4627228
Весь Node.js Meetup здесь)
06:43:00 ПП
User 4627228
gaearon :)
06:43:05 ПП
06:43:33 ПП
User 309556
ну все, спалил контору
06:43:53 ПП
User 309556
сейчас у него в личке будет Q&A
06:44:00 ПП
06:44:46 ПП
User 3412850
Так то давно спалил, Денис же кидал скрин своей переписки с Даней несколько дней назад
06:45:13 ПП
06:48:30 ПП
User 33682121
немного оффтопа, а почему gaeron пошел на твитч?
06:48:47 ПП
User 33682121
http://livecoding.tv есть же такая штука, где аудитория релевантна
liveedu.tv
LiveEdu.tv is a project learning platform for people to learn how to build real products.
06:52:46 ПП
User 187276728
привет @chicoxyzzy
06:53:46 ПП
User 4627228
@gaearon не может быть оффтопом в чате про React :)
06:59:32 ПП
User 57696946
Привет всем!
Расскажите, пожалуйста кто чем/как компоненты тестирует
07:22:26 ПП
User 1682650
человеком
07:22:46 ПП
User 1682650
надежно и быстро
07:44:16 ПП
User 309556
быстро ли?
07:45:57 ПП
User 185980313
надежно ли?
07:48:45 ПП
User 1395200
User 57696946
Привет всем!
Расскажите, пожалуйста кто чем/как компоненты тестирует
Можно на enzyme от airbnb посмотреть
08:05:26 ПП
User 4627228
Его на React.Amsterdam активно пиарили кстати
react.amsterdam
React Amsterdam is a full day two-track conference of all things React, gathering Front End developers across the globe in the tech heart of Europe.
08:06:15 ПП
User 309556
его и до этого пиарили (и на конфах тоже). и он годный
08:12:12 ПП
User 99494833
User 4627228
Есть лайхак для MoscowJS, если не успел зарегистрироваться - приходишь минут за 30 до начала и редставляешься Андреем Саломатиным. :)
Интересно сколько же тёзок прийдет)
08:15:59 ПП
User 86311207
https://medium.com/airbnb-engineering/enzyme-javascript-testing-utilities-for-react-a417e5e5090f#.z25cgkcmc
medium.com/airbnb-engineering/enzyme-javascript-testing-utilities-for-react-a417e5e5090f
By Leland Richardson
08:16:37 ПП
User 1395200
@DenisIzmaylov @chicoxyzzy отлично, надо будет его всё-таки более активно попробовать заюзать.
08:17:02 ПП
08:17:54 ПП
User 86311207
Он на много круче уродливого нативного tests-utils c километровыми названиями методов
08:37:07 ПП
08:37:15 ПП
User 309556
и там еще есть полезняшки
09:11:08 ПП
09:18:29 ПП
09:53:58 ПП
User 1245357
/stat@comstatbot
09:54:11 ПП
User 101934369
/stat@comstatbot
09:54:23 ПП
User 4627228
/stat@comstatbot
09:55:53 ПП
User 4627228
/stat@comstatbot
10:02:01 ПП
User 4627228
/start@telewitterbot
10:02:24 ПП
10:02:42 ПП
User 4627228
Надо написать что-нибудь Дане для теста
10:09:27 ПП
User 4627228
Есть какой-нибудь бот, чтобы импортировал историю переписки с Gitter и Slack?
10:23:08 ПП
User 309556
ты уверен, что это хорошая идея?
10:40:41 ПП
User 656567
User 4274761
ну, видимо, это достаточно больщое последнее количество) десктоп-клиент умудряется зависать при этом
Андрей, это с native osx клиентом проблемы
10:42:55 ПП
User 4627228
На уровне дайджеста - да
10:43:18 ПП
User 4627228
Простой ссылкой с логом для ознакомления
10:54:25 ПП
User 309556
ну вот ща в гиттере за 2 последних часа я не знаю сколько сообщений было… считать не возьмусь)
10:54:42 ПП
User 309556
плохо представляю как из этого дайджест сделать
10:58:55 ПП
User 39182759
10 заходим в груп инфо
20 смотрим shared links
25 игнорируем ссылки от статбота
30 ...читаем как дайджест
10:59:17 ПП
11:02:10 ПП
User 171203444
Вообще в слаке spb frontend такой юзается
11:03:03 ПП
User 4627228
Тогда неинтересно