Vue.js 使用vi18n更改区域设置将删除查询和哈希
我正在使用vuejs和vi18n构建一个单页网站。下面是一个场景,当我单击其中一个导航链接时,它会滚动以查看页面的特定部分Vue.js 使用vi18n更改区域设置将删除查询和哈希,vue.js,vue-router,vue-i18n,Vue.js,Vue Router,Vue I18n,我正在使用vuejs和vi18n构建一个单页网站。下面是一个场景,当我单击其中一个导航链接时,它会滚动以查看页面的特定部分 localhost/en/#about 更改区域设置会起作用,它会从英语更改为日语,反之亦然。但是我注意到#about被删除了 localhost/jp/ 有没有一种方法在更改区域设置时不会删除散列?据我所知,在路由更改时,默认情况下会删除散列 因此,您可以通过另一种方式执行此操作,在路由更改之前,将#散列存储在存储器中: window.localStorage.set
localhost/en/#about
更改区域设置会起作用,它会从英语更改为日语,反之亦然。但是我注意到#about
被删除了
localhost/jp/
有没有一种方法在更改区域设置时不会删除散列?据我所知,在路由更改时,默认情况下会删除散列 因此,您可以通过另一种方式执行此操作,在路由更改之前,将
#散列
存储在存储器中:
window.localStorage.setItem('hash',window.location.hash)
然后,在布线挂钩中:
router.beforeach((to,from,next)=>{
//...
让hashCache=window.localStorage.getItem('hash')
让toUrl=to.path+hashCache?`${hashCache}`:“”
//...
下一个(图尔)
//...
})