vue项目 hash模式下使用this.$router.query取值 undefined的问题记录

最近开发的一个公众号项目 遇到的问题记录下
该项目采用的hash模式: 经验有限 遇到了之前没发现的问题
我们都知道正常情况下 Vue页面间采用
push 跳转 可以采用parmas和query传参(这里只记录query时遇到的问题),然后在下一页面可以采用 this.$router.query取到对应传递的值.
因为是公众号首页地址肯定是后台配置下发的 ,类似于这种格式https://www.csdn.net/?a=123#/home

当我按照 this.$router.query.a去取值时 竟然打印出了undefined。???黑人问号脸

没办法,本着先处理问题的原则 更换使用location.search的方法来截取参数
location.search.slice(1).split("&") 然后再慢慢拿到想要的数据

问题解决完了,该查找原因了,经过查询资料 终于找到了问题:
原来 vue router 截取参数this.$router.query这种形式 只能截取拼在url后面的 而正常hash模式参数一般是在#hash值之前的 所以没法取到; 如果说你的页面地址 参数是在#hash值之前 需要获取的话 只能采用location.search的方式;当然正常页面跳转传值参数是会在#hash值之后的可以正常采用vue的参数截取方法。

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值