Как получить доступ к данным хранилища в компонентах с помощьюact-redux - PullRequest
0 голосов
/ 18 декабря 2018

У меня есть два независимых компонента, которые называются login и home.Я использовал mapStateToProps в компоненте входа для передачи данных.

function mapStateToProps(state) {
  return { loginData: state.agent };
}

export default withRouter(connect(mapStateToProps)(login));

Нажатие кнопки в компоненте входа приведет нас к домашней странице.Я хочу получить и отобразить все значения 'loginData' в домашнем компоненте.Я попробовал this.props.loginData в домашней комп.Но не получил данные магазина.Есть предложения по этому поводу?

Ответы [ 3 ]

0 голосов
/ 18 декабря 2018

Чтобы получить доступ к this.props.loginData в компоненте домашней страницы, даже там вам нужно использовать mapStateToProps , как вы использовали в компоненте входа в систему.

function mapStateToProps(state) {
  return { loginData: state.agent };
}

export default withRouter(connect(mapStateToProps)(homepage));

, тогда вы сможетедля доступа к this.props.loginData

Если вы хотите получить доступ к данным хранилища Redux в любом компоненте, вам нужно использовать connect и использовать mapStateToProps для подключения значений хранилища к вашим реквизитам.

0 голосов
/ 18 декабря 2018

Вы можете передавать данные через свойство состояния

Если вы используете history.push

Как передать параметры с помощью history.push в реакции-маршрутизаторе v4?

аналогично перенаправлению

https://github.com/ReactTraining/react-router/blob/master/packages/react-router/docs/api/Redirect.md

0 голосов
/ 18 декабря 2018

Мое предложение будет заключаться в том, чтобы запустить действие, чтобы заполнить хранилище избыточных данных деталями, введенными пользователем после входа в систему. После этого можно использовать mapStateToProps на домашней странице для получения сведений из хранилища избыточных данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...