前端非覆盖式发布

1,011 阅读1分钟

[参考文章](大公司里怎样开发和部署前端代码? - 知乎 (zhihu.com))

前端简单一点的发布方式就是每次将打包的文件放到服务器的一个目录下,通过nginx将入口文件index.html挂出来就可以了,以后每次更新只要将新包替换掉原来的包就可以了。这种方式叫做覆盖式发布。这种方式发布的项目,会存在发布后用户需要刷新或清缓存才能看到最新效果的问题。

非覆盖式发布:前端工程打包后会生成一个index.html文件和其他的像js,css,静态资源等文件。这时候我们将index.html文件放在我们的服务器上,将js,css,静态资源文件放在oss储存里边。通过修改publicPath为oss访问域名地址。这时候我们的index.html文件引用的文件地址都是绝对路径。

举例: 覆盖式打包文件采用的是相对路径 企业微信截图_16771434027992.png 我们打开知乎 微信截图_20230223171140.png 可以看到引用的路径都是绝对路径。

以vue.config.js文件举例, 微信截图_20230223171140.pngpublicPath设置为我们的oss访问路径,通过设置package.json里面的版本号,达到版本管理。这样的好处是旧文件还在,1.1.1发现有问题可以回退到1.1.0。