添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
Skip to content
Naive Ui Admin
Return to top
On this page

构建&部署

前言

由于是展示项目,所以打包后可能较大,如果项目中没有用到的插件,可以删除对应的文件或者路由,不引用即可,没有引用就不会打包。

构建

项目开发完成之后,执行以下命令进行构建

构建打包成功之后,会在根目录生成 dist 文件夹,里面就是构建打包好的文件

旧版浏览器兼容

.env.production

设置 VITE_LEGACY=true 即可打包出兼容旧版浏览器的代码

预览

发布之前可以在本地进行预览,有多种方式,这里介绍两种

不能直接打开构建后的 html 文件

  • 使用项目自定的命令进行预览(推荐)
  • 本地服务器预览(通过 live-server)

分析构建文件体积

如果你的构建文件很大,可以通过项目内置 rollup-plugin-analyzer 插件进行代码体积分析,从而优化你的代码。

运行之后,在自动打开的页面可以看到具体的体积分布,以分析哪些依赖有问题。

TIP

左上角可以切换 显示 gzip 或者 brotli

压缩

开启 gzip 压缩

开启 gzip,并配合 nginx 的 gzip_static 功能可以大大加快页面访问速度

TIP

只需开启 VITE_BUILD_COMPRESS='gzip' 即可在打包的同时生成 .gz 文件

开启 brotli 压缩

brotli 是比 gzip 压缩率更高的算法,可以与 gzip 共存不会冲突,需要 nginx 安装指定模块并开启即可。

TIP

只需开启 VITE_BUILD_COMPRESS='brotli' 即可在打包的同时生成 .br 文件

同时开启 gzip 与 brotli

只需开启 VITE_BUILD_COMPRESS='brotli,gzip' 即可在打包的同时生成 .gz .br 文件。

gzip 与 brotli 在 nginx 内的配置

部署

注意

项目默认是在生产环境开启 Mock,这样做非常不好,只是为了演示环境有数据,不建议在生产环境使用 Mock,而应该使用真实的后台接口,并将 Mock 关闭。

发布

简单的部署只需要将最终生成的静态文件,dist 文件夹的静态文件发布到你的 cdn 或者静态服务器即可,需要注意的是其中的 index.html 通常会是你后台服务的入口页面,在确定了 js 和 css 的静态之后可能需要改变页面的引入路径。

例如上传到 nginx

/srv/www/project/index.html

部署时可能会发现资源路径不对,只需要修改 .env.production 文件即可。

前端路由与服务端的结合

项目前端路由使用的是 vue-router,所以你可以选择两种方式:history 和 hash。

  • hash 默认会在 url 后面拼接 #
  • history 则不会,不过 history 需要服务器配合

可在 src/router/index.ts 内进行 mode 修改

history 路由模式下服务端配置

开启 history 模式需要服务器配置,更多的服务器配置详情可以看 history-mode

这里以 nginx 配置为例

部署到根目录

部署到非根目录

  1. 首先需要在打包的时候更改配置

使用 nginx 处理跨域

使用 nginx 处理项目部署后的跨域问题

  1. 配置前端项目接口地址
  1. 在 nginx 配置请求转发到后台