3 回答
TA贡献1951条经验 获得超3个赞
如果你有多个参数,你必须先把它们放在一个对象中:
const params = {
page: 10,
nice: "yes",
size: 20,
...
}
然后用这个函数序列化它们:
const serialize = obj => Object.keys(obj)
.map(key => `${key}=${encodeURIComponent(obj[key])}`)
.join('&')
像这样 :
history.push({
pathname: history.location.pathname,
search: serialize(params) // => search: 'page=10&nice=yes&size=20&...'
})
TA贡献1796条经验 获得超4个赞
创建具有多个参数的字符串
history.push({
pathname: props.location.pathname,
search: "page=10&nice=yes"
})
TA贡献1829条经验 获得超9个赞
目前,当您第二次推送时,您将以下查询参数添加?page=10到路径名x.com/title
pathname: props.location.pathname, ==> x.com/title
如果要添加新的查询参数,则必须使用 foreach on 检查是否有查询参数this.props.location.query,如果有,则将其添加到路径名
看起来像这样:
let currentPathname;
this.props.location.query.foreach(qparams => {
currentPathname + qparams
});
history.push({
pathname: this.currentPathname,
search: "page=10"
})
添加回答
举报