【发布时间】:2020-04-04 04:33:00
【问题描述】:
我是 React 新手,并尝试根据名称查询呈现页面,例如 http://localhost:3000/show?name=james
所以我最初将路线添加为:
<BrowserRouter>
<Switch>
<Route path='*' component={ErrorComponent} />} />
<Route path="show(/:name)" name="name" component={Show}></Route>
</Switch>
</BrowserRouter>
然后我尝试渲染组件显示如下:
import React, { Component } from 'react';
import queryString from 'query-string';
class Show extends Component {
componentDidMount(){
console.log(this.props.location.search);
const values = queryString.parse(this.props.location.search);
console.log(values.name);
}
render() {
const { params } = this.props.match;
return <div>
<h4>About</h4>
<p>This is About page.</p>
{params.id ? <b>ID: {params.id}</b> : <i>ID is optional.</i>}
</div>
}
}
export default Show;
然后当我尝试显示页面时
http://localhost:3000/show?name=james
它总是显示 404。不确定我做错了哪一部分。任何帮助表示赞赏。 我也在使用 react-router-dom 5.1.2 。 谢谢。
【问题讨论】:
标签: javascript reactjs react-router-dom