vue路由上的#/怎么去掉_vue 路由去掉url中的“#”

vue-router中默认使用的是hash模式,url中会带有“#”,例如“http://localhost:3000/#/”,

这种情况我们遇到一个问题,就是服务端会在url后面补充参数,我需要拿到这个参数获取信息。

但是有这个“#”,url就变成了“ www.a.com/aaaa?c=1&b=2#&params=3”,客户端要用到params这个参数就拿不到了,如果想拿到就需要再处理一下“#”号。再有url上有个“#”也不太美观。

接下来就改了下vue-router的模式

export default new Router({

mode: 'history',

base:'/'//如果js和css跟html放在同级,这个也是要指定一下路径的。

})

改成‘history’模式,‘#’就去掉了,很开心。

然而打完包以后,页面是空白页。

然后有修改了下路径

把“assetsPublicPath”修改成你的js和css的路径,默认是“/”根路径,肯定是找不到资源的,也不会把资源放在根路径下。

我把js和css和图片这些静态资源放在cdn的,所以这个地方是一个绝对路径。所以router.js中的base去掉,否则在router调转的时候都会加上遗传base设置的路径。

如果“https://a.com”,调整“https://a.com/aa”

如果base设置了只,比如“/dist”,那你的url就变成了“https://a.com/dist/aa”

当然设置到这里还没有完,还需要你的服务端同事或者it同事设置一下ng

root /Users/qiilee/Desktop/vue/dist; 映射到172.20.x.x:128服务器。

至此就可以愉快的打开没有“#”号的url了。

参考文章:https://www.jb51.net/article/194900.htm

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值