
Dmitry
08.09.2017
12:12:54
да и нехорошо в екшоны рефки кидать

Anton
08.09.2017
12:13:08
ну очевидно, что чтобы к чему то обратиться из экшена это должно лежать в сторе
а значит нахер тут редакс
:)

Google

Dmitry
08.09.2017
12:13:47
В моем проекте тоже были ребята
которые так думали
вот к чему это привело
аду из миксинов и глобалок

Anton
08.09.2017
12:15:41
Ну тут как спроектируешь приложение. Я тут помучал @sergeysova и @kana_sama они показали как правильно :)

Mike
08.09.2017
12:15:47

Dmitry
08.09.2017
12:16:38
тогда часть инфы будет в редаксе,а часть в локальном стейте

Anton
08.09.2017
12:16:44

Dmitry
08.09.2017
12:16:53
со времением это в говнокод превратится

Anton
08.09.2017
12:17:27
Сейчас считаю золотое правило - что нужно нескольким компонентам держим в редаксе, остальное в стейте

Mike
08.09.2017
12:17:30
ну так в редаксе будет то, что нужно всем, а в локальном стейте то, что нужно компоненту

Dmitry
08.09.2017
12:17:31

Mike
08.09.2017
12:17:31
вроде логика редакса ровно в этом

Google

Dmitry
08.09.2017
12:17:58

Mike
08.09.2017
12:18:45
ну так блин, если тебе это нужно нескольким компонентам — то или терпи, или у тебя не так устроены компоненты

Dmitry
08.09.2017
12:19:12
Ну вот я сделаю так
и через 2 недели заходят правки
что в какой-то особенной форме
надо инфа заблюрена она или нет
что бы закрыть ее
и прийдется это пихать туда еще
Я склоняюсь к выбору редакс форм скорее
т.к там все в редуксе и не будет таких проблем

Mike
08.09.2017
12:21:51
ну вообще, лол, закрытие формы бы лучше закрывать из нее же
ну типа, у тебя зачем-то закрытие очень далеко разнесено

Dmitry
08.09.2017
12:22:17
ну так закрывается она на аутсайд клик закрывается

Mike
08.09.2017
12:22:18
форма должна в редакс класть можно ее закрыть или нет

Anton
08.09.2017
12:22:25
я бы склонился к отдельному компоненту ToolbarForm где и рулил бы и состоянием формы и закрытием

Dmitry
08.09.2017
12:22:26
или на открытие другой формы

Mike
08.09.2017
12:22:27
а по какой причине ебет ее
а не того кто закрывает

Dmitry
08.09.2017
12:23:21

Artyom
08.09.2017
12:23:44

Google

Mike
08.09.2017
12:23:50
ну да
я к тому что кидать валидна ли она или заблюрена —- это ее логика а не закрывашки

Nikolay
08.09.2017
12:26:08
Доброго всем времени суток. Вопрос про react в связке с redux и react-router 4. Проблема состоит в следующем: Есть много компонентов на странице, которые зависят от авторизованного пользователя. Как правильно сделать чтобы во всех компонентах желательно через props передавался текущий авторизованный пользователь. В localStorage есть только jwt токен.

Сергей
08.09.2017
12:26:40

Nikolay
08.09.2017
12:27:25
я думал об этом, только не понимаю где правильно запросить с сервера текущего пользователя по jwt

Сергей
08.09.2017
12:28:15

Nikolay
08.09.2017
12:29:54
когда я обарачиваю главный компонент с помощью conect redux ского, то у меня не работает роутинг react-router-4
class Main extends Component {
render() {
return (
<div>
<Header/>
<Router/>
<Footer/>
</div>
);
}
}
const Router = () => (
<main style={mainStyle}>
<Switch>
<Route exact path='/' component={Index}/>
<GuestRoute exact path='/authorization' component={Authorization}/>
<GuestRoute exact path='/registration' component={Registration}/>
<PrivateRoute exact path='/favorites' component={Favorites}/>
<Route path="*" component={NotFound} />
</Switch>
</main>
)

code4aman
08.09.2017
12:38:31
Еще есть redux-first-router
будет отзыв? хотя судя по интервью автора - там еще много чего надо доделать, но когда сделает - будет огонь

Evjeni
08.09.2017
12:38:44

Nikolay
08.09.2017
12:38:56
вообще ничего

Alex
08.09.2017
12:39:08
тимлид принял решение другой стек использовать, поэтому redux-first-router я не пощупал

Evjeni
08.09.2017
12:42:17

Nikolay
08.09.2017
12:42:36
import React, { Component } from 'react';
import Router from './Router'
import Header from './Header'
import Footer from './Footer'
import { connect } from 'react-redux'
import {getCurrentClient, getBadge} from '../AC/auth'
class Main extends Component {
componentDidMount = () => {
this.props.getCurrentClient();
}
render() {
return (
<div>
<Header/>
<Router/>
<Footer/>
</div>
);
}
}
export default connect(
(state) => {
return {
currentClient: state.auth.currentClient,
badge: state.auth.badge,
}
},
{ getCurrentClient, getBadge }
)(Main)

Evjeni
08.09.2017
12:44:47
https://github.com/ReactTraining/react-router/issues/4671
export default withRouter(connect(mapStateToProps, mapDispatchToProps)(Main)) пробуй

Nikolay
08.09.2017
12:47:40
большое спасибо, сейчас попробую
работает

Sergey
08.09.2017
13:00:05
Извените, немного не по теме, а можно в stylus читать NODE_ENV и обрабатывать условия, хочу две темы переключать

Google

Vladimir
08.09.2017
13:00:39

Artyom
08.09.2017
13:12:44

Sergey
08.09.2017
13:13:56

Emir
08.09.2017
13:14:06
Не могу понять, почему компонент, который должен диспатчить экшин, диспатчит его без нажатия, при загрузке страницы
https://github.com/metr1ckzu/todo-redux/blob/master/src/containers/GetTodosButton.js

ENAMETOOLONG
08.09.2017
13:15:05

Sergey
08.09.2017
13:17:02

Artyom
08.09.2017
13:18:48

Ilya
08.09.2017
13:19:00

Admin
ERROR: S client not available

Emir
08.09.2017
13:19:25
разве он не должен именно при нажатии диспатчить?
а не при загрузке страницы

ENAMETOOLONG
08.09.2017
13:20:22

Ilya
08.09.2017
13:21:54

Artyom
08.09.2017
13:23:18

Emir
08.09.2017
13:23:31
@ilya_pomaskin спасибо. А можно как-то диспатчить что-то при загрузке, но не используя componentWillMount?

Ilya
08.09.2017
13:24:43
нет
можешь посмотреть на recompose, там есть декоратор lifecycle

Emir
08.09.2017
13:25:25
нет
спасибо, я кажись как раз понял, почему в другом компоненте такое же присвоение не диспатчится при загрузке.

Dzianis
08.09.2017
13:25:43
при загрузке страницы или отрисовки реакт компонента?

Evjeni
08.09.2017
13:30:03

Google

Vladyslav
08.09.2017
13:55:29
хей, товарищи, а можно как-то проверить почему метод componentDiDMount у компонента вызывается 3 раза ? имеется большая вложенность компонентов

from
08.09.2017
13:57:41
для начала погляди почему WillUnmount вызывается

Михаил
08.09.2017
13:57:46
На странице при этом один компонент?

Vladyslav
08.09.2017
13:58:39
да, один
т.е я так понимаю он 3 раза ре-рендериться

Михаил
08.09.2017
14:00:31
Ну, он 3 раза инициализируется, в таком случае. Если компонент один, значит он анмаунтится по какой-то причине и создается заного.
Если он рендерится при каком-то условии, то посмотри, как это условие ведет себя и не меняет ли оно значение несколько раз подряд.

Vladyslav
08.09.2017
14:07:40
понял, начал ковырять)
и еще вопорс, а можно как-то в редакс формах при инишиалайзе формы обновить данные formValues ?
ну т.е они приходят с сервера асинхронно
т.ек я условно я хочу отрендерить значение какого инпута, но я получаю эту форму с сервера (сохранение между степами) в визард-формах

Yaroslav
08.09.2017
14:13:45
в material-ui есть готовый левый SideBar?

Artyom
08.09.2017
14:15:46

Yaroslav
08.09.2017
14:16:01
можешь кинуть ссылку, я что-то найти не могу

Sergey
08.09.2017
14:16:37

Artyom
08.09.2017
14:17:43
Если только начинаешь, бери вторую ссылку

Sergey
08.09.2017
14:18:18

Artyom
08.09.2017
14:18:26
Чего?

Sergey
08.09.2017
14:18:30