ownProps всегда передается как пустой объект - PullRequest
0 голосов
/ 24 мая 2018

У меня все мои компоненты обернуты в реагирующем редуксе, и я пытаюсь отрисовать какой-то компонент из другого компонента, нажимая на какую-то кнопку, но я не могу получить пропущенные реквизиты

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

import React, { Component } from 'react';
import { connect } from 'react-redux';
import ChildComponent from './child_component';

class Home extends Component {
 constructor(props) {
  super(props);
 }
 go_to_child_component(){
  this.setState({
    child_component_triggered: true
  })
 }
 render() {
  return (
   <div>
    {this.state.child_component_triggered ? <ChildComponent filter="some_value" /> : null}
    <button onClick={this.go_to_child_component.bind(this)}>render ChildComponent</button>
   </div>
  )
 }
 const mapStateToProps= (state) => {...//normal codes}
 const mapDispatchToProps = (dispatch) => {...//normal codes}
 export default connect(mapStateToProps, mapDispatchToProps)(Home);

именно здесь я пытаюсь получить переданные реквизиты в дочернем компоненте по ownProps:

import React, { Component } from 'react';
import { connect } from 'react-redux';

class ChildComponent extends Component {
 constructor(props) {
  super(props);
 }
 render() {
   return (
    <div> i am child component </div>
   )
 }
}

const mapStateToProps = (state, ownProps) => {
  console.log(ownProps) // always {}
  let obj = {...state};
  obj.ownProps = {...ownProps};
  return {...obj};
};
const mapDispatchToProps = (dispatch) => {...//normal codes}
export default connect(mapStateToProps, mapDispatchToProps)(ChildComponent);

ownProps всегдапустой объект, любая помощь, пожалуйста

1 Ответ

0 голосов
/ 24 мая 2018

Вы можете использовать this.props.filter без сопоставления в вашем дочернем компоненте

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