在开发过程中发现路径中带有/#/的标示,而且还去不掉,很丑陋。
众所周知,vue-router有两种模式,hash模式和history模式。
带#的则是hash模式。
将router中的mode设置为history就可以了
接下来有个问题,界面一刷新,就变404了!!!!
网上搜了下,需要对后端环境进行一个配置。
这里只列举nginx的配置,其他的配置点击这里去官网看
先配置config/index.js
修改assetsPublicPath为根目录
module.exports = {
build: {
env: require('./prod.env'),
index: path.resolve(__dirname, '../dist/index.html'),
assetsRoot: path.resolve(__dirname, '../dist'),
assetsSubDirectory: 'static',
assetsPublicPath: '/', // hash 模式会默认的在此处 添加为 assetsPublicPath: './'
productionSourceMap: true,
...
}
}
然后配置nignx
server {
listen 0.0.0.0:12345;
location / {
root /home/我的应用跟目录;
try_files $uri $uri/ /index.html =404; // 这个是重点
}
error_page 404 /index.html
}
Url再也没有#了,齐活~
网友评论