@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 15 мая 2016 г.

12:43:35 ДП
User 7386851
соседи из mtn view -- привет)
12:47:00 ДП
User 4627228
@klimashkin @dmitriiabramov  поздоровайтесь)
12:47:49 ДП
User 12791
добрый день! :)
01:16:42 ДП
User 196895
Фиджи?
06:18:45 ДП
User 187276728
а тут ведь можно сделать, чтобы сверху показывалось сколько сейчас онлайн человек? иногда полезно видеть
06:18:54 ДП
User 187276728
кто-нибудь пользовался http://www.reactd3.org/ как ощущения? (:
11:41:21 ДП
User 4627228
Парни, помните я вчера рассказывал про react-native-desktop? Познакомьтесь, это Дмитрий, создатель проект.👍🏼
11:41:40 ДП
User 4627228
https://github.com/ptmt/react-native-desktop
github.com/ptmt/react-native-macos
React Native for macOS is an experimental fork for writing desktop apps using Cocoa - ptmt/react-native-macos
11:42:44 ДП
User 4627228
И кстати 555й член нашей группы :) 🎉
11:42:57 ДП
01:26:18 ПП
User 192559518
кто будет на holy.js?
01:26:58 ПП
User 128056504
я только что зарегалась
01:31:01 ПП
User 141822776
Есть у кого-то пример, как подписки к Relay прикрутить? Нашел вот такой issue, там разные хаки советуют, но не могу заставить работать. https://github.com/facebook/relay/issues/541
github.com/facebook/relay/issues/541
Realtime data in GraphQL is something that we and the community are actively exploring. There are many ways to achieve "realtime" or near-realtime updates: polling, "live" queries, or event-based a...
01:33:33 ПП
User 192559518
нативно никак
01:34:14 ПП
User 192559518
рядом подписываешься через socket.io например и обновляешь кеш
01:34:33 ПП
User 192559518
можно еще проще: по таймеру запускать forceFetch
01:37:11 ПП
User 141822776
Я пытаюсь на NetworkLayer уровне это сделать. У меня срабатывает событие, что данные поменялись для данного запроса, данные тоже уже есть на клиенте. Как мне их в Relay впихнуть, имея только request и query = request.getQuery() соответственно?
Store.forceFetch({query: request.getQuery()}, cb) - ничего не меняет
01:37:48 ПП
User 141822776
это правильный способ, вообще?
01:38:23 ПП
User 192559518
это все левые способы, пока нативной поддержки нет
01:39:49 ПП
User 141822776
Вот я их всех перепробовал, но так и не смог сделать чтобы работало. Все они падают с разными ошибками, часть из которых я нашел почему, часть не могу понять. Какой-нибудь живой пример бы помог, если у кого есть
01:40:35 ПП
User 192559518
публичного нет, к сожалению
01:41:39 ПП
User 141822776
это я понял сразу )
02:08:19 ПП
User 141822776
короче, вот что получилось https://github.com/amelisa/relay-amelisa , вроде работает, даже в оффлайне должно, но пока без подписок
github.com/amelisa/relay-amelisa
relay-amelisa - Relay integration for Amelisa
02:10:29 ПП
User 141822776
если кто-то расскажет, как прикрутить подписки к Relay, то будет у вас realtime-offline Relay
05:02:07 ПП
User 185980313
амелиса позволяет сделать хранение и мерж данных между клиентом и сервером? что то вроде swarm ?
05:07:06 ПП
User 141822776
да, только есть общий JSON CRDT тип данных, включающий в себя операции над объектами, массивами, строками и числами. То есть можно мержить сложные структуры, как например, массив массивов объектов. Или, например, поле объекта может быть строкой с коллаборативным редактированием (компонент для реакта, который разруливает text selection есть). Плюс есть возможность подписываться не только по ключу документа, но и на запрос к коллекции (монго запросы). Изоморфный интерфейс. GraphQL в качестве proof of concept прикручен. У нас проект на React Native + Amelisa скоро зарелизится
05:09:01 ПП
User 141822776
Хранилища для браузера - IndexedDb, для React Native - AsyncStorage и SqliteStorage. На сервере - монга, либо rethinkdb с ограниченным подмножеством монго-запросов.
05:17:07 ПП
User 185980313
есть какие либо проблемы в таком мердже? и способы выстрелить себе в ногу?
05:19:34 ПП
User 185980313
хочу сделать в одном проекте на react+relay+GraphQL+(amelisa / swarm/ альтернативы)+RethinkDB. Осталось только понять, как это все прикрутить и заставить нормально работать)
05:20:04 ПП
User 141822776
оно в любом случае смержит и у всех клиентов будет одинаково, просто может быть не так, как имел ввиду каждый конкретный пользователь. Например, два пользователя ушли в оффлайн и поредактировали текст, вышли из оффлайна, он смержился и получилось что-то среднее между их вариантами, фактически каша :-)
05:20:46 ПП
User 185980313
есть еще хорошие альтернативы amelisa?
05:21:10 ПП
User 141822776
с оффлайном нету
05:22:38 ПП
User 141822776
я вот тут описывал разные решения, если интересно https://habrahabr.ru/post/277645/
habrahabr.ru/post/277645
Написал недавно движок для синхронизации данных, имеющий первоклассную поддержку оффлайна. Например, можно уйти в оффлайн, изменять данные, закрыть браузер,...
05:54:55 ПП
User 185980313
спасибо за ссылку