@react_js

Страница 2749 из 5115
Dmitry
10.12.2017
20:15:31
Добрый вечер. Друзья, помогите плз целый день мучають, можете ссылкой кинуть. Проблема: Необходимо в приложении, лучше в одном месте ловить все эвенты и на каждый эвент стрелять action для различных компонент. что я делаю. я создаю компоненту EventListener, передаю в нее через props все action от всех компонент. EventListener получился примерно таким class EventsSSE extends React.Component { constructor(props) { super(props); } componentDidMount() { this.source = new EventSource('/sse_subscribe'); const { logsActions } = this.props this.source.addEventListener('addLog', function(e) { logsActions.addLog(JSON.parse(e.data)) }); } componentWillUnmount() { console.log('componentWillUnmount EventsSSE') this.source.close(); } } Но тут начинаются чудеса, сам action - addLog отрабатывает, но вот reducer не вызывается... Подскажите куда копать, что делать. Может я архитектурно не верно подошел к вопросу?

Nameless
10.12.2017
20:21:42
this.props.Store.myPage.avatar.SubscribeForPictureUpdate(this.setState({Avatar:this.props.Store.myPage.avatar})); ... export default connect( (state, ownProps) => ({ Store: state, ownProps }), subscribe => ({ SubscribeForPictureUpdate:(review)=>{ subscribe(review); }}) )(MyMenu); Нужно при изменении в сторе поля avatar выполнить this.setState({Avatar:this.props.Store.myPage.avatar} или какую либо функцию Ясное дело, что не работает, как реализовать подобную логику

Combot
10.12.2017
20:28:19
combot.org/chat/-1001032883247

Google
Nameless
10.12.2017
20:28:45
Стор я объявил раньше

Stepan
10.12.2017
20:29:04
Зачем весь стор прокидывать?

Прокинь только то, что нужно, тебе для того дали селекторы

Andrew
10.12.2017
20:33:10
Чет орнул ?

Может сразу window.store.getState()

Max
10.12.2017
20:44:26
шутники ебать

Cenator
10.12.2017
20:48:06
Прокинь только то, что нужно, тебе для того дали селекторы
react-redux это селекторы? или еще что-то надо?

Stepan
10.12.2017
20:48:56
mapStateToProps

Это функция-селектор

Ну, я так думал

Google
Stepan
10.12.2017
20:49:24
Поправьте, если не так

Cenator
10.12.2017
20:49:44
мне кажется что он не чекает апдейты

Stepan
10.12.2017
20:50:01
Я не смотрел на проблему, просто приебался

Cenator
10.12.2017
20:50:29
аа, значит нужен еще reselect

почему мемоизированные селекторы перестают работать когда есть несколько инстансов использующих их компонентов?

kana
10.12.2017
21:13:04
да, все так

mapStateToProps

Это функция-селектор

Ну, я так думал

Поправьте, если не так

Дмитрий
10.12.2017
21:27:39
мне кажется что он не чекает апдейты
Он делает настолько много всего, что офигеть можно)

Cenator
10.12.2017
21:42:16
То есть при апдейте стейта он новую ссылку даст

Stepan
10.12.2017
21:44:40
Тогда бы реселект был бы не нужен

Дмитрий
10.12.2017
21:45:18
То есть при апдейте стейта он новую ссылку даст
Предварительно проверит через shallow compare что что-либо поменялось

Да и вообще предоставляет способ самому определять как это проверять, емнип

Dmitrii
10.12.2017
21:48:50
не пробовали выкинуть Link из R4 и при клике (где должен быть линк) диспатчить экшен например NAVIGATE_TO_DASHBOARD, на который в thunk/saga/etc… уже грузить данные, делать еще что либо, любую логику, ну и сам history.push соответственно. В итоге получается больше контроля за роутами + didMound будет по свободнее от логики

Dmitrii
10.12.2017
21:49:48
разве там не на оборот?

Link меняет роуту, а стейт просто слушает измненеия и синкается, но контроля над самим пушем все равно нет. Я имею ввиду push который идет от link, а не push из экшена

Google
Dmitrii
10.12.2017
21:57:03
на линк повесить диспатч, что это значит?

кароче, основная идея, не юзать link, как он есть, а вседа диспатчить кастомные экшены, после которых уже диспатчить реальный push

Andrew
10.12.2017
21:58:00
По клику на линк диспатчить экшон

Dmitrii
10.12.2017
21:59:27
ну ясен хрен, я могу и по клику на <a> это делать

Дмитрий
10.12.2017
22:01:30
разве там не на оборот?
Там вообще линка нет)) Просто тебе предоставляются экшн-креаторы push, replace и остальные, тебе остается сделать компонент который бы их диспатчил так, как тебе требуется

Dmitrii
10.12.2017
22:02:18
разве react-router-redux не подразумевает что установлен и react-router-dom с линком?

Дмитрий
10.12.2017
22:02:56
Тебя никто не заставляет им пользоваться) Емнип там *-dom почти не используется

const toDashboard = () => push('/dashboard') чего-нибудь типа такого

Dmitrii
10.12.2017
22:03:11
блин точно

Dmitry
11.12.2017
04:56:43
Здравствуйте. Недавно начал изучать реакт. Подскажите, как стилизовать один и тот же компонент в разных местах по разному с применнием css modules?

Anton
11.12.2017
05:15:01
Если css modules то лучше читай про BEM?

Dmitry
11.12.2017
05:18:24
Готов рассмотреть другие варианты. :) Хочу от бэма отказаться, наоборот.

Anton
11.12.2017
05:19:53
“один и тотже компонент”, “по разному"

те класс и модификатор

Готов рассмотреть другие варианты. :) Хочу от бэма отказаться, наоборот.
Ну тогда откажись и от css-modules в пользу styled-componets, emotion и других css-совсем-в-js

Andrey
11.12.2017
05:21:19
Google
Admin
ERROR: S client not available

Andrey
11.12.2017
05:21:38
Передаёшь стиль, который тебе нужен и всё.

Anton
11.12.2017
05:22:10
должны существовать какие-то правила

Andrey
11.12.2017
05:22:27
должны существовать какие-то правила
О каких правилах ты говоришь?

Правилах именования классов? Да пофиг. Как хочешь, так и именуй.

Artyom
11.12.2017
05:24:07
лол

Действительно, кому нужны понятные стандарты...

Andrey
11.12.2017
05:25:58
Artyom
11.12.2017
05:26:18
Я про именования классов

А точнее больше про комментарий "как хочешь"

Andrey
11.12.2017
05:26:44
Я про именования классов
Аналогично как и с названиями переменных.

Упарываться в названиях не надо, но говорить, что есть стандарт...

Artyom
11.12.2017
05:27:13
Сова говорил норм про переменные, от общего к частному. Вот норм тема, например

Anton
11.12.2017
05:29:21
Вы упоролись что ли

Вопрос простой, а ответы хз какие

Либо прокидывай класс, либо пропс, отвечающий за выбор модификатора, либо ищи другое решение (оно есть)

Pauline
11.12.2017
05:34:50
?

Alexandr
11.12.2017
07:31:09
есть чатик по ризону?

Google
ed
11.12.2017
07:31:25
народ кто на  holyjs?

Oleg ?
11.12.2017
07:32:04
А когда?

ed
11.12.2017
07:32:13
сегодня) вчера и сегодня

kana
11.12.2017
07:32:18
а разве он уже не прошел?

ed
11.12.2017
07:32:40
н интересно может кто-то тут находится как раз)

Oleg ?
11.12.2017
07:33:18
Я из года в год разачировываюсь в этих конфах

В твиттере выходит все новое еще за месяц до любой конфы

Ну и на гитхабе офк

Я не про холи, я в целом про любую конфу

Страница 2749 из 5115