Vue 去除路径中的#号

原文链接  https://www.jb51.net/article/138489.htm

 

在开发过程中发现路径中带有/#/的标示,而且还去不掉,很丑陋。

众所周知,vue-router有两种模式,hash模式和history模式。

带#的则是hash模式。

将router中的mode设置为history就可以了

 

接下来有个问题,界面一刷新,就变404了!!!!

网上搜了下,需要对后端环境进行一个配置。

这里只列举nginx的配置,其他的配置点击这里去官网看

先配置config/index.js

修改assetsPublicPath为根目录

?

1

2

3

4

5

6

7

8

9

10

11

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

?

1

2

3

4

5

6

7

8

server {

    listen 0.0.0.0:12345;

    location / {

        root /home/我的应用跟目录;

        try_files $uri $uri/ /index.html =404;  // 这个是重点

    }

    error_page 404 /index.html

}

你可能感兴趣的:(Vue 去除路径中的#号)