vue-router base选项和路由hash与history模式。
base 选项的默认值为 “/”,1.当想要一个域名运行多个项目的时候,这时候需要把const router = new VueRouter({base:'xinwen2',routes,})里面的base值是代表我们项目的名称,可以随意起,2.接下来将vue.config当中添加const { defineConfig } = require('@vue/cli-service')module.
·
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了。
更多推荐
已为社区贡献1条内容
所有评论(0)