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

03:48:38 ДП
User 12791
только офис
04:16:28 ДП
User 162236709
User 86311207
Ну хаскель нельзя знать
почему
04:45:32 ДП
User 146732672
Подскажите, стоит ли внедрять в проект реакт покомпонентно, но только для real-time обновлений данных, без SSR?
05:00:04 ДП
User 4627228
Да, насколько я помню @chicoxyzzy именно реал-тайм данные отображает
05:26:16 ДП
User 3094187
/stat@comstatbot
06:07:13 ДП
User 1395200
User 146732672
Подскажите, стоит ли внедрять в проект реакт покомпонентно, но только для real-time обновлений данных, без SSR?
Почему нет?
06:14:22 ДП
User 4274761
User 146732672
Подскажите, стоит ли внедрять в проект реакт покомпонентно, но только для real-time обновлений данных, без SSR?
выше была ссылка на пост про сам фейсбук, у них компоненты воткнуты местами, вводят их постепенно
06:24:56 ДП
User 39182759
стоит, в этом один из важны плюсов реакта
07:33:35 ДП
User 146732672
User 1395200
Почему нет?
Беспокоят лишние 100+ кб, ради пары тройки компонент
08:01:14 ДП
User 39182759
Ну практика показывает, что после внедрения пары реактовских компонент сайт очень с хорошей скоростью переходит на реакт весь, так что не беспокойтесь:)
08:48:29 ДП
User 1395200
User 146732672
Беспокоят лишние 100+ кб, ради пары тройки компонент
Ну смотря какая стратегия. Если планируется постепенное переползание на реакт, то это неизбежно
08:51:03 ДП
User 98883639
помимо реакта есть и другие легковесные решения
08:51:28 ДП
User 90854158
кстати, кто как относится к библиотечке ractivejs ?
08:51:38 ДП
User 90854158
вроде не хуже реакта, но легковесна
08:53:30 ДП
User 98883639
вот, есть обрезанный реакт. Только там нету серверного рендеринга, ну, и еще пару фич
https://github.com/Lucifier129/react-lite
github.com/Lucifier129/react-lite
react-lite - an implementation of React that optimizes for small script size
08:53:38 ДП
User 98883639
за то 20 кб
10:09:35 ДП
User 124442878
User 198292089
Обычно каждый редьюсер отвечает за свой кусочек сторы. И каждый умный компонент тоже юзает свой кусочек.
вот это и хотелось бы но не совсем понятно как на своей кусочек подписаться
10:14:18 ДП
User 124442878
не делает магии у меня webpack с реактом. просто перезагрузка страницы без сохранения стейта :/ у меня стейт правда на урл завязан так что в принципе что-то оно выводит но не совсем та магия которую хотелось бы. поставил react-hmre preset. походу все таки что-то не так я делаю :/ и так конечно прикольно, но хотелось бы чтобы совсем по красоте чтобы пахало
10:31:15 ДП
User 213704994
@DenisIzmaylov может стоит создать отдельный канал для предложений по работе?
10:31:45 ДП
User 88403602
думаю, таких каналов уже достаточно
10:34:31 ДП
User 56924675
User 213704994
@DenisIzmaylov может стоит создать отдельный канал для предложений по работе?
все равно будут заходить в профильные и писать туда тоже
10:36:32 ДП
User 213704994
User 88403602
думаю, таких каналов уже достаточно
Именно по React-стеку?
10:40:39 ДП
User 213704994
User 56924675
все равно будут заходить в профильные и писать туда тоже
если постить в профильные каналы, то вероятность того, что твое сообщение заметят среди кучи других крайне низка
10:41:37 ДП
User 90854158
User 88403602
думаю, таких каналов уже достаточно
a не подскажешь пару каналов ? Кроме тех, что от хабра
10:42:06 ДП
User 88403602
я не искал. а в профильном по реакт-стеку, вангую, что будет полтора человека
10:44:30 ДП
User 4274761
это и есть профильный канал по реакт-стеку с четырьмя сотнями участников :)
10:44:54 ДП
User 213704994
User 88403602
я не искал. а в профильном по реакт-стеку, вангую, что будет полтора человека
Ну, ок можно по фронтенду, но боюсь тогда они будут теряться в бесконечных angular/jquery-вакансиях
10:46:34 ДП
User 56924675
User 213704994
Ну, ок можно по фронтенду, но боюсь тогда они будут теряться в бесконечных angular/jquery-вакансиях
Такие каналы не приживаются. И разработчики не будут там сидеть, потому что никому это не нужно. Либо в этом чатики начнутся активные обсуждения и он превратится в обычный.
10:47:56 ДП
User 213704994
Нужные строгие правила для оформления предложения, dev-ua/jobs вполне себе нормально существует
10:48:40 ДП
User 213704994
подробное описание вакансии с вилкой зарплат
11:24:55 ДП
User 4627228
Пытались делать такие группы. Они не живут.
11:25:59 ДП
User 4627228
Вот интересные слайды про Relay и HTTP API в частности с недавнего #PiterPy: https://www.slideshare.net/mobile/MaxKlymyshyn/piterpy-2016-parallelization-aggregation-and-validation-of-api-in-python
slideshare.net/MaxKlymyshyn/piterpy-2016-parallelization-aggregation-and-validation-of-api-in-python
There's plenty of different approaches for building simle and robust API: REST, SOAP, RPC and so on. Some of them are too verbose, some – too complex. This pre…
12:19:37 ПП
User 3094187
Привет всем! 
Подскажите, кто как решает проблему хранения token-ов в Redux приложении? 
Проблема такая: есть app с ssr + сторонний сервер с данными, после логина приходит jwt токен. Сейчас он лежит в cookie. Во многих redux-примерах token пихают в state, но так как это isomorphic приложение state у нас прямо на клиенте лежит в INITIAL_STATE. А теперь вопрос, как тут дела обстоят с sequrity? Подскажите какой-нибудь the right way! Благодарю за помощь, комьюнити!
12:22:56 ПП
User 189910313
Подскажите, кто как решает проблему хранения token-ов в Redux приложении?  - я в localStorage храню
12:23:40 ПП
User 3094187
LocalStorage не подойдет
12:24:07 ПП
User 3094187
С сервере к нему доступ не получить, это же клиент
12:24:27 ПП
User 120647221
кроме cookie по-моему нет вариантов больше
12:27:16 ПП
User 3094187
Да, хранить token в cookie норм вариант, но мне нужен этот токен для некоторых запросов к API. Также советуют использовать httpOnly для cookie, чтобы из js к нему доступ нельзя было получить, но как тогда этот токен то для запросов использовать?)
12:28:16 ПП
User 86311207
Нужео httpOnly и а на беке только читать куки
12:28:18 ПП
User 3094187
Вот неплохая статья по этому поводу, может кому будет полезна
https://stormpath.com/blog/where-to-store-your-jwts-cookies-vs-html5-web-storage/
stormpath.com/blog/where-to-store-your-jwts-cookies-vs-html5-web-storage
Learn the differences between JSON Web Tokens (JWT) vs OAuth 2.0 security and token storage in cookies vs localStorage or sessionStorage (via HTML5 web storage).
12:28:22 ПП
User 120647221
можно не использовать httpOnly, но тогда с csrf могут быть проблемы
12:28:29 ПП
User 86311207
Так же как и сессиями работает все
12:28:45 ПП
User 120647221
а можно хранить токен в куках с httpOnly и дублировать его либо в initialState либо в локалсторадже
12:28:54 ПП
User 120647221
но это геморно, конечно
12:28:59 ПП
User 86311207
А зачем дублировать, это не секьюрно
12:29:07 ПП
User 3094187
LocalStorage не вариант
12:29:25 ПП
User 120647221
а httpOnly readble на клиенте, да?
12:29:28 ПП
User 120647221
я просто не в курсах
12:30:04 ПП
User 120647221
нет же
12:30:06 ПП
User 86311207
нет не читаемый
12:30:07 ПП
User 120647221
я пьян
12:30:32 ПП
User 86311207
Лучше вообще не читать куки на клиенте это потенциально дыра в секюрити
12:31:25 ПП
User 3094187
А если запросы не всегда через сервер идут?
12:31:49 ПП
User 3094187
Походу надо секьюрные всегда через сервер отправлять в таком случае
12:32:21 ПП
User 120647221
проксировать с сервера на апи тоже не гуд
12:34:00 ПП
User 3094187
Так как быть, господа?)
12:34:07 ПП
User 120647221
а в чем проблема держать в сторе его?
12:34:09 ПП
User 86311207
проксировать
12:34:40 ПП
User 3094187
Проблема в том, что у тебя будет токен на клиенте лежать
12:35:04 ПП
User 120647221
в этом по-моему и задача заключается)
12:35:23 ПП
User 3094187
А sequrity где?)
12:35:51 ПП
User 120647221
а кто его может получить то? из стора то?
12:36:49 ПП
User 3094187
Все что есть на клиенте, мы можем получить...
12:38:46 ПП
User 86311207
Токен секрентый или это токен пользователя?
12:39:12 ПП
User 86311207
Если это секретный ключ к апи то храни его на севере и проксируй на нужное тебе апи
12:39:56 ПП
User 86311207
если это просто пользовательская куку то у тебя от гугла того же в браузеере куча кук, твоих собственных и они httpOnly и в логи не срутся
12:40:20 ПП
User 3094187
JWT токен пользователя
12:40:49 ПП
User 86311207
От твоего серева?
12:40:56 ПП
User 86311207
Твоей апишки
12:41:41 ПП
12:42:02 ПП
User 3094187
по токену получаю данные для пользователя
12:43:51 ПП
User 86311207
Ну смотри ты же сервером отдаешь данные только которые может видеть пользователь? так вот если ты куку будешь хранить в httpOnly то сторонние чуваки не смогут ее засеч в логах твоего сервера и тем самым ее достать
12:44:16 ПП
User 86311207
А уже с клиента ее будет видеть пользователь если откроет девтулс и найдет ее
12:44:54 ПП
User 86311207
Но что он с ней сделает? она же его, то есть данные из этого ключа нового ему ничего не дадут, так ведь?
12:45:01 ПП
User 86311207
Вопрос закрыт?
12:47:23 ПП
User 3094187
@AGambit как я понял можно хранить в стэйте и не париться? так?
12:48:05 ПП
User 86311207
так ты будешь слать куку на клиент (так как ты ее увидишь в js)
12:48:08 ПП
User 3094187
Либо я чего не допонял)
12:48:20 ПП
User 86311207
и ее потенциально можно перехватить
12:48:32 ПП
User 86311207
В куках httpOnly подругому
12:48:45 ПП
User 86311207
так как зачем тебе хранить куку на фронте?
12:49:08 ПП
User 86311207
Идея в том что бы твой токен был в куке, и читался только с сервера все
12:50:11 ПП
User 3094187
Понял. Спасибо!
02:02:49 ПП
User 152745946
Кука просто не универсальное решение
02:03:06 ПП
User 152745946
привет socket.io
02:07:47 ПП
User 1340580
О, ребят, скоро будет хорошо:
https://github.com/gaearon/react-hot-boilerplate/pull/61
github.com/gaearon/react-hot-boilerplate/pull/61
A Big Update Is Coming React Hot Loader 3 is on the horizon, and you can try it today. It fixes some long-standing issues with both React Hot Loader and React Transform, and is intended as a replac...
02:09:29 ПП
User 309556
что именно будет хорошо?
02:09:37 ПП
User 152745946
babel-plugin-react-transform deprecated
02:09:39 ПП
User 152745946
все плохо
02:09:43 ПП
User 309556
то, что руками писать надо будет для релода?
02:34:10 ПП
User 3094187
User 152745946
Кука просто не универсальное решение
К сокетам мы еще придем, пока что необходимо решение без их использования
02:44:34 ПП
User 152745946
а еще кука будет ходить всегда к серверу, при любом запросе. В общем не ахти решение, с кукой
03:11:30 ПП
User 1395200
Куки не нужны.
03:11:42 ПП
User 1395200
И апишка должна через токен в хидерах работать
03:12:00 ПП
User 1395200
Не будешь же ты на мобилках потом вдруг куку юзать
03:12:06 ПП
User 1395200
Для доступа к API
03:27:01 ПП
User 86311207
Можно уже и куку юзать, современные андройд и айос это понимают. Хотя хедер тоже ок вариант)
03:27:46 ПП
User 152745946
кука это тоже хедер, есличо))
03:28:47 ПП
User 152745946
все приемущество куки, против хедера/query-параметра в том, что браузер ее берет автоматом
03:29:01 ПП
User 152745946
это также ее минус, потому что для каждого запроса кука будет проставляться автоматом
04:05:55 ПП
User 166617281
https://libraries.io/github/jondot/awesome-react-native
libraries.io/github/jondot/awesome-react-native
An "awesome" type curated list of React Native components, news, tools, and learning material - a Ruby repository on GitHub
04:11:18 ПП
User 1395200
ребят, кука в REST API это вообще трэшак полный же
04:14:49 ПП
User 6936842
кука в REST API превращает его в не REST API
04:22:08 ПП
User 39182759
>кука в REST API превращает его в не REST API
Это с чего?
04:23:06 ПП
User 6936842
не stateless получается
04:25:51 ПП
User 39182759
а в чем разница, находить юзера по куке или находить по авторизационному токену из хедера?
04:27:30 ПП
User 6936842
а, блин, сорян
невнимательно прочитал
04:27:33 ПП
User 6936842
так-то да
04:27:41 ПП
User 6936842
разницы нет
04:32:55 ПП
User 23384802
как вариант -  в апи сервере читать токен из хеадера, но на серверном рендеринге доставать токен из куки и проксировать в хеадер (когда идет запрос к апи)
06:46:40 ПП
User 3094187
User 23384802
как вариант -  в апи сервере читать токен из хеадера, но на серверном рендеринге доставать токен из куки и проксировать в хеадер (когда идет запрос к апи)
Спасибо за эдвайс. Так и делаю)
07:07:11 ПП
User 4627228
React Native example https://github.com/SeshApp/text-blast-react-native
github.com/SeshApp/text-blast-react-native
text-blast-react-native - Text Blast React Native Mobile Client
08:49:27 ПП
User 89478045
Коллеги, поднимал вопрос про http client. Мне тут порекомендовали axios. Но есть проблема с ie8, он его не поддерживает. Есть альтернативы?
08:51:54 ПП
User 89478045
superagent лажает на cors запросах вплоть до ie9
09:01:11 ПП
User 35172279
https://www.youtube.com/watch?v=oPSuvaYmXBY
youtube.com/watch?v=oPSuvaYmXBY
Slides here: https://speakerdeck.com/wincent/relay-deep-dive Relay is an open source data-fetching framework for React applications invented and used at Face...
09:01:56 ПП
User 35172279
^^  Relay dive с прошлой недели
09:02:55 ПП
User 35172279
https://youtu.be/UBGzsb2UkeY
^^ Про GraphQL оттуда же
youtube.com/watch?v=UBGzsb2UkeY
Spend this 30 minutes learning how to adapt your existing ORM, SOA, or REST API to GraphQL so that you can begin to use GraphQL-based technologies like Relay...
09:07:04 ПП
User 151893222
чтобы axios заработал в ie8 достаточно добавить полифила для Promise + плюс возможно es5-shim.
09:07:04 ПП
09:34:42 ПП
09:34:58 ПП
User 68520717
всем бэм, посоны http://getbem.com/
getbem.com
BEM — Block Element Modifier is a methodology, that helps you to achieve reusable components and code sharing in the front-end.
09:35:02 ПП
User 68520717
простите
09:35:09 ПП
User 68520717
просто стикеры появились
10:21:19 ПП
User 151893222
ой, только не бем здесь
10:49:12 ПП
10:49:24 ПП
User 4627228
Круто Паш:)