Nuxt中如何获取URL的哈希(#)部分?
在Nuxt中获取URL哈希部分及$route属性说明
获取URL哈希部分
- 直接用
this.$route.hash就能拿到带#前缀的哈希值,比如针对https://example.com#test,会返回#test - 要是需要去掉前缀
#,用字符串处理就能得到纯哈希内容:// 方式1:截取字符串 const hashValue = this.$route.hash.slice(1) // 得到'test' // 方式2:替换前缀 const hashValue = this.$route.hash.replace('#', '') // 得到'test'
获取完整URL
如果要拿包含哈希的完整URL,直接访问window.location.href即可:
const fullUrl = window.location.href // 得到'https://example.com#test'
更推荐用this.$route.fullPath获取包含哈希和查询参数的路径部分(比如/page#test?foo=bar),再结合站点域名拼接成完整URL。
$route的属性说明
Nuxt里的$route完全继承自Vue Router的Route对象,常用属性有这些:
path:不含查询参数和哈希的路径(就是你当前使用的属性)hash:URL的哈希部分(带#)fullPath:包含查询参数和哈希的完整路径query:URL中的查询参数对象params:路由匹配的动态参数对象
内容的提问来源于stack exchange,提问作者Robert C. Holland
相关产品推荐
相关产品推荐

