如何在Reaction-路由器V4中传递与历史相同的参数。推送/链接/重定向?如何传递参数this.props.history.push('/page')反应-路由器v4?.then(response => {
var r = this;
if (response.status >= 200 && response.status < 300) {
r.props.history.push('/template');
});
3 回答
九州编程
TA贡献1785条经验 获得超4个赞
var r = this;
if statement
根据医生的说法:
历史对象通常具有以下属性和方法:
长度-(数字)历史堆栈中的条目数 操作-(字符串)当前操作(推送、替换或弹出)
位置-(对象)当前位置。可能具有下列属性:
路径名-(字符串)URL的路径 搜索-(字符串)URL查询字符串 散列-(字符串)URL散列片段 状态-(字符串)位置特定的状态,当这个位置被推送到堆栈上时,它被提供给例如Push(path,state)。仅在浏览器和内存历史记录中可用。 推动(路径,[状态])-(函数)将一个新条目推到历史堆栈上 替换(path,[state])-(函数)替换历史堆栈上的当前条目 Go(N)-(函数)通过n个条目移动历史堆栈中的指针 GoBack()-(函数)等价于go(-1) GoForward()-(函数)等价于go(1) 块(提示)-(函数)阻止导航
this.props.history.push({ pathname: '/template', search: '?query=abc', state: { detail: response.data }})
Link
Redirect
<Link to={{ pathname: '/template', search: '?query=abc', state: { detail: response.data } }}> My Link </Link>
/template
this.props.location.state.detail
withRouter
.
根据文件:
带路由器
您可以访问历史对象的属性和最近的 <Route>'s
匹配通过 withRouter
高阶部件。 withRouter
每次路由发生变化时,都会重新呈现其组件。 <Route>
渲染 props: { match, location, history }
.
添加回答
举报
0/150
提交
取消