解决vue项目访问地址自动添加#号问题
新建一个vue项目,访问地址url后自动添加#号,很不美观。
·
问题描述:
新建一个vue项目,访问地址url后自动添加#号,很不美观。
解决方法:
在项目路由文件index.js文件中,将路由模式修改为history,代码如下:
export default new Router({
mode: 'history',
routes: [
{
path: '/',
name: 'HelloWorld',
component: HelloWorld
},
{
path: '/cardList',
name: 'cardList',
component: cardList
}
]
})
可能出现的问题:
1、变为history模式,子路由在刷新情况下会出现样式变乱的情况。
问题原因:
./ 是指用户所在的当前目录(相对路径);
/ 是指根目录(绝对路径,项目根目录),也就是项目根目录;
对于hash模式,根路径是固定的,即项目的根目录;但是history模式下,以 / 开头的嵌套路径会被当作根路径,所以使用 ./ 引入文件,就会找不到文件:因为文件本身就是在项目根目录下的,并不在嵌套路径这个目录下。
总结,无论hash模式还是history模式,可以直接使用 / 从项目根目录引入静态文件。
解决方法:
修改index.html文件中的静态文件引入路径。
修改前:
link rel="stylesheet" href="./static/css/base.css"
修改后:
link rel="stylesheet" href="/static/css/base.css"
更多推荐
已为社区贡献1条内容
所有评论(0)