Javascript 如何附加到动态路由器url?
假设我有这个urlJavascript 如何附加到动态路由器url?,javascript,reactjs,react-router,react-router-dom,Javascript,Reactjs,React Router,React Router Dom,假设我有这个url/something/:id/somethingelse/:anotherid/hello 当我对/something/:id/somethingelse/:anotherid/hello/complete 如果我执行history.push('/complete')它只会覆盖整个内容,那么我如何附加到它 另外,这些东西是:id显然是动态的,所以我只想附加到url,而不丢失任何东西,然后一旦用户刷新了新路线,它就会停留在上面?通过手动获取window.location.path
/something/:id/somethingelse/:anotherid/hello
当我对/something/:id/somethingelse/:anotherid/hello/complete
如果我执行history.push('/complete')
它只会覆盖整个内容,那么我如何附加到它
另外,这些东西是
:id
显然是动态的,所以我只想附加到url,而不丢失任何东西,然后一旦用户刷新了新路线,它就会停留在上面?通过手动获取window.location.pathname和query参数并附加到/complete
中,然后按下新的按钮来解决这个问题路由因此,从中,我只找到了下面详述的与更改URL相关的推送
和替换
功能:
有关推送的详细信息:
push(path,[state])-(函数)将新条目推送到历史堆栈上
有一个不同的名为replace
,您可能想看看:
replace(路径,[state])-(函数)替换历史堆栈上的当前条目
VSCode
为您提供了一个提示,因此对于以后的使用,熟悉replace
可能很有用:
您可能想使用替换一个,当然也可以使用您在回答中提到的自定义解决方案