当前位置: 首页 > news >正文

妇联网站建设方案南京建站公司网站

妇联网站建设方案,南京建站公司网站,百度登录入口百度,360免费做网站电话背景 当一个页面很久没刷新#xff0c;又突然点到页面。由于一些文件是因为动态加载的#xff0c;当重编后#xff08;如前后端发版后#xff09;#xff0c;这些文件会发生变化#xff0c;就会出现加载不到的情况。进而导致正在使用的用户#xff0c;点击页面发现加载…背景 当一个页面很久没刷新又突然点到页面。由于一些文件是因为动态加载的当重编后如前后端发版后这些文件会发生变化就会出现加载不到的情况。进而导致正在使用的用户点击页面发现加载不顺畅、卡顿问题。 解决思路 使用Vite构建一个插件在每次打包时自动生成version.json版本信息文件记录版本信息最好使用时间戳来作为版本号。然后在路由跳转时通过请求服务端的version.json的版本号与浏览器本地的版本号对比来检测是否需要更新并弹窗提示用户是否立即刷新页面以获取最新版本。 实现代码 1、utils文件下新建versionUpdatePlugin.ts文件 //使用Vite插件打包自动生成版本信息 import fs from fs; import path from path;interface OptionVersion {version: number | string; } interface configObj extends Object {publicDir: string; } const writeVersion (versionFileName: string, content: string | NodeJS.ArrayBufferView) {// 写入文件fs.writeFile(versionFileName, content, err {if (err) throw err;}); }; export default (options: OptionVersion) {let config: configObj {publicDir: };return {name: version-update,configResolved(resolvedConfig: configObj) {// 存储最终解析的配置config resolvedConfig;},buildStart() {// 生成版本信息文件路径const file config.publicDir path.sep version.json;// 这里使用编译时间作为版本信息const content JSON.stringify({ version: options.version });if (fs.existsSync(config.publicDir)) {writeVersion(file, content);} else {fs.mkdir(config.publicDir, err {if (err) throw err;writeVersion(file, content);});}}}; };2、Vite.config.ts配置 // 打包时获取版本信息 import versionUpdatePlugin from ./src/utils/versionUpdatePlugin; export default (): UserConfig {const CurrentTimeVersion new Date().getTime();return {define: {// 定义全局变量转换为时间戳格式import.meta.env.VITE_APP_VERSION: JSON.stringify(Date.now()),},plugins: [// 版本更新插件versionUpdatePlugin({version: CurrentTimeVersion})]}}; });3、utils文件下新建versionCheck.ts文件 import { DialogPlugin } from tdesign-vue-next; import axios from axios;// 版本检查 export const versionCheck async () {const response await axios.get(version.json);console.log(当前版本:, import.meta.env.VITE_APP_VERSION);console.log(最新版本:, response.data.version);// process.env.VITE__APP_VERSION__ 获取环境变量设置的值判断是否与生成的版本信息一致if (import.meta.env.VITE_APP_VERSION ! response.data.version) {const confirmDialog DialogPlugin.confirm({header: 版本更新提示,body: 检测到新版本更新之后将能体验到更多好用的功能是否现在更新,confirmBtn: {content: 更新,theme: primary,},theme: warning,onConfirm: () {confirmDialog.update({ confirmBtn: { content: 更新中, loading: true } });const timer setTimeout(() {window.location.reload();clearTimeout(timer);}, 500);},onCancel: () {console.log(用户取消了更新);},});} }; 4、路由配置 在路由配置文件如permission.ts)中调用检查版本函数 import { versionCheck } from /utils/versionCheck;router.beforeEach(async (to, from, next) {// 检查版本await versionCheck(); })
http://www.w-s-a.com/news/677337/

相关文章:

  • 网站建设的编程专门做面包和蛋糕的网站
  • 档案网站建设比较分析南京建站公司
  • 哪个网站可以做店招傻瓜式wordpress
  • 网站开发项目经理职责青岛模版网站建设
  • 企业建站哪个好网站建设所用程序
  • 网站建设seo视频定制图片软件
  • 404错误直接转向到网站首页四川省建筑施工企业人员考试平台
  • 手表电商网站智能展厅
  • 南海网站推广梅州做网站公司
  • 昆明专业网站建设公司成都外贸网站建设费用
  • php mysql网站开发项目公司网站宣传设计
  • 自己做网站服务器的备案方法怎么查网站点击量
  • 信息产业部icp备案中心网站织梦做双语网站
  • 爱站网站长seo综合查询工具局网站信息内容建设 自查报告
  • 我想建一个网站怎么建淄博网站推广那家好
  • 做网站和app需要多久河南自助建站建设代理
  • 大连做企业网站的公司宣传平台有哪些类型
  • 如何用微信做网站免费设计logo网站有哪些
  • 服务平台型网站余姚网站定制
  • 网站搭建联系方式太平阳电脑网网站模板
  • 请简述网站制作流程html5网络公司网站模板
  • 海尔集团企业网站建设分析重庆市建设银行网站
  • 介绍公司的网站有哪些广西壮族自治区
  • 网站做rss wordpress9 1短视频安装软件
  • 网站建设价格西安室内设计网站排行榜前十名知乎
  • 用nas建设服务器网站用vs做音乐网站
  • 天津市武清区住房建设网站网站自适应框架
  • 制作移动网站公司网站开发职业规划
  • 网站头部怎样做有气势wordpress 页面 锚
  • 秦皇岛网站建设系统推荐个人网站免费制作