我的问题与Vue中的Vue-router模块有关。根据文档,我们只能以编程方式更改当前网址https://router.vuejs.org/guide/essentials/navigation.html
的最后一部分因此,$router.push
仅会更改此链接的“ 3”部分:
http://localhost:8080/#/1/2/3
在我的特定情况下,我想重新加载数据并动态更改WHOLE URL,如下所示:
http://localhost:8080/#/1/2/3
-> http://localhost:8080/#/5/6/7
正在设置一个新的window.location.href
,但是我想知道是否有更优雅的解决方案。 $router.push
是否有替代方法,但也会改变URL的其他部分?
答案 0 :(得分:0)
您还可以推送非相对URL:
相对:
$router.push(3)
$router.push({path: '3'}}
绝对:
$router.push({path: '/5/6/7'})
答案 1 :(得分:0)
当处于哈希模式时,Vue-router会管理井号之后的所有内容:
| HASH |
http://localhost:8080/#/1/2/3
致电$router.push(path: '3')
会将网址设置为http://localhost:8080/#/3
关于Vue Router文档中的哈希:
vue-router的默认模式为哈希模式-它使用URL 哈希值以模拟完整的URL,以便在以下情况下不会重新加载页面: URL发生了变化。