• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

Vue2.x项目兼容IE9的常见问题和解决方案

武飞扬头像
努力搬砖的程序员
帮助1

1、如何用js判断浏览器是否是IE

  1.  
    function isIE() {
  2.  
      if (!!window.ActiveXObject || "ActiveXObject" in window) return true;
  3.  
      else return false;
  4.  
    }

2、需要下载babel-polyfill和es6-promise,并在入口文件中引入

  1.  
    // 引入babel-polyfill
  2.  
    import "babel-polyfill";
  3.  
     
  4.  
    // es6 promise
  5.  
    import promise from "es6-promise";
  6.  
    promise.polyfill();

3、如果IE9开发环境下无法运行项目并报错'wekSocket'未定义,不用管,后面将项目部署到服务器上接可以了

4、IE中路由跳转页面不刷新的问题(不只IE9)

  1.  
     // IE中路由跳转页面不更新问题解决
  2.  
      mounted() {
  3.  
        if (isIE) {
  4.  
          window.addEventListener(
  5.  
            "hashchange",
  6.  
            () => {
  7.  
              let currentPath = window.location.hash.slice(1);
  8.  
              if (this.$route.path !== currentPath) {
  9.  
                this.$router.replace(currentPath);
  10.  
              }
  11.  
            },
  12.  
            false
  13.  
          );
  14.  
        }
  15.  
      },
学新通

5、在IE浏览器中get第一次请求之后拿到结果就不再请求了,而是从缓存中获取数据,对于那些需要实时结果的信息,我们不能接受缓存值

①在get请求的url参数后面加时间戳:时间戳:t:Date.now()、new Date().getTime()

②用post请求代替get请求,不符合restful api设计

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgcibcj
系列文章
更多 icon
同类精品
更多 icon
继续加载