【发布时间】:2020-06-20 21:23:03
【问题描述】:
我在 Route 中设置了参数。它们从我的组件出现在控制台中,但我收到“未定义”错误。
<Router>
<App>
<Switch>
<Route exact path='/data/:param' component={data} />
</Switch>
</App>
</Router>
组件
class Data extends Component {
constructor(props) {
super(props);
async componentDidMount() {
console.log(this.props.match.params.param)
...
export default Data;
如果我可以在控制台中看到它们,为什么我仍然会收到错误消息?
未处理的拒绝(TypeError):无法读取未定义的属性“参数”
【问题讨论】:
-
您能否将
export行包含在Data中? -
我添加进去了,只是默认导出
-
你为什么不使用Router(Data)?
-
你说它记录得很好,那么错误到底发生在哪里?
-
withRouter是一个 HOC,它将路由 props 注入到您的组件中。在访问this.props.match...之类的道具之前,您将需要这些