小编Mar*_*yDD的帖子

mapStateToProps ownProps 参数为空

我是 React、React Router (v4) 和 Redux 的新手。我试图mapStateToProps(state, ownProps)通过访问来访问 URL 参数,ownProps.match.params.idparams数组始终为空。我已经使用调试器来检查 ownProps 并且id应该传递的参数不在ownProps.

这是我的路线的片段:

    <Switch>
      <Route exact path='/' component={HomePage} />
      <Route path='/about' component={AboutPage} />
      <Route path='/course' component={ManageCoursePage} />
      <Route path='/course/:id' component={ManageCoursePage} />
      <Route path='/courses' component={CoursesPage} />
    </Switch>
Run Code Online (Sandbox Code Playgroud)

这是来自的相关代码ManageCoursePage.js

class ManageCoursePage extends React.Component {
  constructor(props, context) {
    super(props, context);

    this.state = {
      course: Object.assign({}, props.course),
      errors: {},
    };
  }
}

function mapStateToProps(state, ownProps) {
  const courseId = ownProps.match.params.id;
  ...
} …
Run Code Online (Sandbox Code Playgroud)

reactjs react-router redux react-redux react-router-dom

1
推荐指数
1
解决办法
4119
查看次数