Vue 项目的成功发布和部署
Vue 项目的发布
最近一直在尝试对 Vue 项目进行打包和发布,发现通过 npm run build 打包生成的 dist 文件不能直接放到服务器下面进行部署,否则会出现以下问题:
究其原因是,无法正确找到相关 js 文件的路径 。网上查找了很多的解决方案,大多建议修改路由模式(mode:' history ')和发布的文件路径(publicPath:' ./ '),但由于脚手架版本的原因,一直找不到相应的配置文件,这里使用的是最新版本的 VueCLI 5 创建的项目,官方简化了许多文件的配置信息(隐藏起来了)。经过多次尝试,最终实现了 Vue 项目在本地服务器 Tomcat 下的部署!
方法一:
1、修改配置信息:router/index.js 文件和 vue.config.js 文件
router/index.js
const router = new Router({
mode:'history',//修改路由模式为 history
routes:routes
})
vue.config.js
const { defineConfig } = require('@vue/cli-service')
module.exports = defineConfig({
transpileDependencies: true,
publicPath:'./' //添加配置信息
})
打包运行
npm run build
最终生成的文件目录为:
将整个 dist 文件夹放到 Tomcat 目录下的 webapps 目录下
启动 Tomcat 服务,打开文件目录或者输入网址 http://localhost:8080/dist/
运行成功。
方法二:
修改配置文件 vue.config.js 直接添加如下代码
module.exports = {
publicPath:"/supermall/",
outputDir: "dist",
}
然后修改路由配置 router/index.js 添加以下信息:
const router = new Router({
mode: 'history',
base:"/supermall/",
routes: routes
})
打包运行: npm run build,将生成的d ist 文件夹重命名为 supermall 放到 webappp 下访问即可!
补充:
如果有小伙伴使用 vue-cli 3.x 以下版本创建 vue 项目,则文件目录下不会有 vue.config.js 文件,老版本的文件目录下可以通过以下配置实现 vue 项目在 tomcat 服务器下的部署:
1.找到 config 文件夹下的 index.js 文件,修改 assetsPublicPath:'/目标文件夹名称/'
2.配置路由信息 router/index.js,主要添加以下信息,base:'/目标文件夹名称/'
打包运行: npm run build
将生产的 dist 文件夹修改名称为 ‘目标文件夹名称’ 放到 tomcat 的 webapp文件目录下即可访问:
更多推荐
所有评论(0)