将状态从 Link 传递到 HashRouter 中的路由
Passing state from Link to Route in HashRouter
我无法通过 <Route />
组件将状态从 <Link />
组件传递到 <Blog />
组件
我正在使用
import { Switch, Route } from 'react-router-dom'
import { HashRouter } from 'react-router-dom';
这是我站的地方,
function Blog (props) {
return (
<div>
<Link to={{ pathname: props.link, state: { title: "test title" } }} >
props.title
</Link>
</div>
);
}
export default Blog;
function Body (props) {
return (
<div className="body">
<Switch>
<Route exact path="/" component={Home} />
<Route exact path="/blogs/:type" component={BlogContent} />
</Switch>
</div>
);
}
export default Body;
function BlogContent (props) {
console.log(props.location.state). // <----- undefined
...
...
}
请求的 URL 与路由器完全匹配,但控制台打印状态为未定义
原来我是从另一个组件传递状态。
结束问题。
我无法通过 <Route />
组件将状态从 <Link />
组件传递到 <Blog />
组件
我正在使用
import { Switch, Route } from 'react-router-dom'
import { HashRouter } from 'react-router-dom';
这是我站的地方,
function Blog (props) {
return (
<div>
<Link to={{ pathname: props.link, state: { title: "test title" } }} >
props.title
</Link>
</div>
);
}
export default Blog;
function Body (props) {
return (
<div className="body">
<Switch>
<Route exact path="/" component={Home} />
<Route exact path="/blogs/:type" component={BlogContent} />
</Switch>
</div>
);
}
export default Body;
function BlogContent (props) {
console.log(props.location.state). // <----- undefined
...
...
}
请求的 URL 与路由器完全匹配,但控制台打印状态为未定义
原来我是从另一个组件传递状态。 结束问题。