推送新路径时如何忽略搜索查询?

问题

我想推送一个新路径作为设置搜索查询的 URI 的补充。

例子:

当前位置:https://example.com/foo?bar=123&foobar=123

当我打电话时history.push('newPath'),我会以https://example.com/newPath. 然而,我想要得到的是https://example.com/foo/newPath.

一种解决方案是调用history.push('foo/newPath'),或者如果我保存当前路径并newPath在顶部添加想要的路径 (),但我希望这history.push可能有办法处理这个问题?


当年话下
浏览 87回答 1
1回答

有只小跳蛙

我想推送一个新路径作为设置搜索查询的 URI 的补充。要更改/附加路径,您可以使用不会影响查询参数的URL 。// maybe from window.location.href?const href = 'https://example.com/foo?bar=123&foobar=12'let url = new URL(href)url.pathname = url.pathname + '/newPath'console.log(url) // https://example.com/foo/newPath?bar=123&foobar=12
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript