iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >Vue实现自动检测及版本更新的方法是什么
  • 763
分享到

Vue实现自动检测及版本更新的方法是什么

2023-07-05 20:07:51 763人浏览 薄情痞子
摘要

这篇“Vue实现自动检测及版本更新的方法是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Vue实现自动检测及版本更新的方

这篇“Vue实现自动检测及版本更新的方法是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Vue实现自动检测及版本更新的方法是什么”文章吧。

    一、思路

    1,每隔一小段时间fetch请求一次服务器首页数据,解析为纯文本。

    2,识别纯文本里对应script标签路径文件指纹是否发生变动

    3,有变动则弹框提示引导用户进行刷新操作

    二、实现步骤

    1.调用fetch拿到首页的html并且转为纯文本格式

    核心代码:

    fetch('/').then(res=>res.text()).then(res=>console.log(res))

    返回结果

    由于vue是单页面,所以返回数据一般都不多,一目了然如下:

    <!DOCTYPE html><html lang=en><head>  <meta charset=UTF-8>  <link rel=icon href=./favicon.ico> <meta name=viewport content="width=device-width,initial-scale=1">  <script type=module crossorigin src=./assets/index.b3865953.js> </script>   <body>    <div id=app></div><script src=./js/WsUtil.js type=text/javascript charset=utf-8></script>  </body></html>

    仔细观察返回数据不难发现script标签里的 <script type=module crossorigin src=./assets/index.b3865953.js> </script> 所对应的文件路径是./assets/index.b3865953.js 这是由于前端工程化会自动给文件带上文件指纹,只要这些文件有变动,那么这些文件指纹也就是hash值也会跟着变化,每隔一小段时间去分析页面中script元素的js,只要发现js路径有变化,说明这个系统是有所改动。

    具体代码如下:

    //请求首页,timestep是为了避免缓存数据

        //请求首页    async function newScripts(){      const html = await fetch('/?timestep='+ Date.now()).then((res)=>res.text());      scriptReg.lastIndex = 0;//正则分析页面所有url地址      let result = [];//保存分析数据到一个数组里      let match;      while((match=scriptReg.exec(html))){        result.push(match.groups.src)      }      return result;//返回数组    }

    //数组里就记录了这一次请求首页在首页当中所有的js的获取地址

    2.检查是否需要更新

    首先调用newScripts拿到当前页所有js路径

    代码如下:

      async function needUpdate(){      const newScripts = await newScripts();//调用newScripts      if(!lastSrcs){//如果之前没有保存页面js地址的话,进行一次保存,初始化并存下当前数据          lastSrcs = newScripts;          return false;        }        let result = false ;        if(lastSrcs.length !== newScripts.length){          result = true;        }        for(let i = 0;i<lastSrcs.length;i++){          if(lastSrcs[i] !== newScripts[i]){            result = true;            break ;          }        }      }      lastSrcs = newScripts;      return result;    }

    3.有则弹出

    每隔两秒调用 needUpdate检查更新函数,判断是否有变化,有更新则提示用户刷新页面,然后在调用自身,不断的进行检查,从而达到提示更新的目的。

    代码如下:

    const timeData=2000;//检查间隔时间function autRef(){  setTimeout(async()=>{    const willUp = await needUpdate();//调用检查更新函数    if(willUp){      const  result = confirm('数据更新点击确认刷新当前页')    };    if(result){      location.reload();//刷新当前页    }    autRef();  },timeData)}

    这里只做了个简单的弹窗,当然大家可以继续优化,可以写成任意自己想要的样子。

    以上就是关于“Vue实现自动检测及版本更新的方法是什么”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网精选频道。

    --结束END--

    本文标题: Vue实现自动检测及版本更新的方法是什么

    本文链接: https://www.lsjlt.com/news/354854.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    本篇文章演示代码以及资料文档资料下载

    下载Word文档到电脑,方便收藏和打印~

    下载Word文档
    猜你喜欢
    • Vue实现自动检测及版本更新的方法是什么
      这篇“Vue实现自动检测及版本更新的方法是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Vue实现自动检测及版本更新的方...
      99+
      2023-07-05
    • Vue实现自动检测以及版本的更新
      目录一、思路二、实现步骤1.调用fetch拿到首页的html并且转为纯文本格式2.检查是否需要更新3.有则弹出总结一、思路 1,每隔一小段时间fetch请求一次服务器首页数据,解析为...
      99+
      2023-05-14
      Vue自动检测版本 Vue检测版本更新
    • 更新tensorflow版本的方法是什么
      要更新TensorFlow版本,可以使用以下命令: 使用pip命令更新TensorFlow: pip install --upg...
      99+
      2024-03-14
      tensorflow
    • word更新版本的方法是什么
      Word的更新版本方法通常有两种途径:1. 自动更新:当你的电脑连接到互联网时,Word会自动检查是否有可用的更新版本,并在有更新时...
      99+
      2023-09-11
      word
    • Vite版本更新检查实现页面自动刷新的解决思路
      目录前端版本更新检查,实现页面自动刷新解决思路思路 1思路 2总结前端版本更新检查,实现页面自动刷新 使用vite对项目进行打包,对 js 和 css 文件使用了 chunkhash...
      99+
      2023-02-08
      vite版本更新 Vite 页面自动刷新
    • ssl证书版本更新的方法是什么
      SSL证书版本更新的方法一般有以下几种:1、自行更新证书如果您使用的是自签名的证书,可以通过自行更新证书的方式来更新证书版本。首先需...
      99+
      2023-05-13
      ssl证书版本 ssl证书
    • Linux下更新python版本的方法是什么
      本篇内容介绍了“Linux下更新python版本的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1、下载python版本  wge...
      99+
      2023-06-28
    • ubuntu更新gcc版本号的方法是什么
      本文小编为大家详细介绍“ubuntu更新gcc版本号的方法是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“ubuntu更新gcc版本号的方法是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。1、使用快捷键...
      99+
      2023-07-04
    • Android应用开发的版本更新检测升级功能怎么实现
      这篇文章主要介绍“Android应用开发的版本更新检测升级功能怎么实现”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Android应用开发的版本更新检测升级功能怎么实现”文章能帮助大家解决问题。一....
      99+
      2023-06-30
    • uniapp中实现App自动检测版本升级的示例代码
      目录前言思路开发初始化获取本地版本号获取服务端最新版本号比较版本号提示更新更新安装包下载进度提示页面中调用完整代码前言 目前手里接到个项目需要用到uniapp来开发一款平板应用,既然...
      99+
      2023-01-03
      uniapp App自动检测 uniapp App版本升级
    • Android应用开发的版本更新检测升级功能实现示例
      目录一.版本的基础知识(一)versionCode(二)versionName(三)版本控制小结(四)版本控制的文件位置(五)版本信息的获取,代码(六)版本更新中重要的代码块:1.获...
      99+
      2024-04-02
    • 微信域名检测API的实现方法及原理是什么
      微信域名检测API的实现方法及原理是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。微信域名检测API接口是腾讯对外公布的微信域名状态查询接口,可实时查询域名在微信中的状...
      99+
      2023-06-04
    • win10自动更新永久关闭的方法是什么
      要永久关闭Windows 10的自动更新,可以按照以下步骤操作:1. 打开“控制面板”,可以通过在Windows搜索栏中输入“控制面...
      99+
      2023-08-29
      win10
    • win10系统禁止驱动自动更新的方法是什么
      这篇文章主要介绍“win10系统禁止驱动自动更新的方法是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“win10系统禁止驱动自动更新的方法是什么”文章能帮助大家解决问题。操作方法:一、按组合键“...
      99+
      2023-06-28
    • Win11手动更新的方法是什么
      在Win11中,用户可以手动更新系统以获取最新的功能和修复的问题。以下是手动更新Win11的方法:1. 打开“设置”:点击任务栏上的...
      99+
      2023-08-26
      Win11
    • ubuntu更新驱动的方法是什么
      本文小编为大家详细介绍“ubuntu更新驱动的方法是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“ubuntu更新驱动的方法是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。使用快捷键【Ctrl+Alt+...
      99+
      2023-07-04
    • Android自动化测试的方法是什么
      本篇内容介绍了“Android自动化测试的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!自动化测试自动化测试指软件测试的自动化,在...
      99+
      2023-06-05
    • redis实现数据更新的方法是什么
      在Redis中实现数据更新的方法主要有以下几种: 使用SET命令:通过SET命令可以设置指定key的值,如果该key已经存在,则会...
      99+
      2024-04-09
      redis
    • win10预览版9879不能自动更新怎么办 Windows10预览版9879不能自动更新的解决方法
        win10预览版9879不能自动更新怎么解决呢微软已经推送了win10预览版9879的更新,相信很多想要选择自动更新的朋友都遇到了麻烦,那么下文小编就为大家带来win10预览版9879不能自动更新怎么解决,和小编一起...
      99+
      2023-06-09
      win10 解决 方法
    • 电脑驱动更新的方法是什么
      这篇文章主要介绍了电脑驱动更新的方法是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇电脑驱动更新的方法是什么文章都会有所收获,下面我们一起来看看吧。驱动更新方法:方法一: 1、使用驱动人生更新驱动是最方便的...
      99+
      2023-06-30
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作