一、问题
使用VUE路由,项目的url总是带有锚点,如下:
http://localhost:8082/#/
二、解决
修改路由文件中 index.js 文件,即 src --> router --> index.js
没修改前:
export default new Router({
routes: [
{
path: '/',
name: 'IndexPage',
component: IndexPage
}
]
})
去 #/锚点:
export default new Router({
mode: 'history',
routes: [
{
path: '/',
name: 'IndexPage',
component: IndexPage
}
]
})
vue-router 默认 hash 模式 —— 使用 URL 的 hash 来模拟一个完整的 URL,于是当 URL 改变时,页面不会重新加载。因为对于正常的页面来说,更换url一定是会导致页面的更换的, 而只有更换url中的查询字符串和hash值得时候才不会重新加载页面。 这里也就是这个道理。
但是#这种形式真的很丑! 所以,如果不想要,可以使用路由的history模式!!! 这种模式充分利用了history.pushState API来完成URL的跳转而不需要重新加载页面。