base 选项的默认值为 “/”,

1.当想要一个域名运行多个项目的时候,这时候需要把

const router = new VueRouter({
  base:'xinwen2',
  routes,
})

里面的base值是代表我们项目的名称,可以随意起,

2.接下来将vue.config当中添加

const { defineConfig } = require('@vue/cli-service')
module.exports = defineConfig({
  transpileDependencies: true,
  publicPath:process.env.NODE_ENV==='production'
  ?'/xinwen2/'
  :'/'
})

publicPath值是来判断我们运行的是开发模式还是生产环境,?后面的就是上面添加的base值,否则就为下面的:后面的。

然后我们可以把每个项目运用npm run build来进行打包。dist目录就是打包好的文件。

然后我们将Nginx服务打开,找到目录下面的www 例:

将打包好的dist目录放到下面并进行命名项目的名称。

接下来就可以在网站上进行多项目的运行。

hash模式就是一个项目运行网址#后面的字段,如:

 history模式就是这个网址没有了#字段,而是直接进行拼接,如: 

使用方法:

const router = new VueRouter({
  base:'xinwen2',
  routes,
  mode:'history'
})

添加mode:history值

将网页变得简洁,但会有一个问题,在生产环境中,history 模式有一个比较大的问题,就是当手动刷新时,会报404错误。

解决方法:找到Nginx服务的目录也就是上面的那个。

 运用vscode打开这个文件

 将里面这一串代码复制一份

 添加一行红色框里面的代码,橘色框里是我们Nginx目录下www目录下自己的定义的项目名称。

这样再打开页面怎么刷新也不会404了。

Logo

前往低代码交流专区

更多推荐