Vue项目下IE报错 SCRIPT1003: 缺少 ‘:’,导致页面空白的解决方案

时间:2020-9-16 作者:admin

今年年初加入了物资团队,遇到的第一个问题就是解决IE的兼容性问题。

1 现象

当时的情况是IE浏览器在登录系统时,登录页无法加载,页面显示空白,所以也无法访问系统里的其他页面。

2 查看报错

在IE浏览器中输入系统网址,打开控制台,发现有这样的报错:SCRIPT1003: 缺少 ‘:’

Vue项目下IE报错 SCRIPT1003: 缺少 ':',导致页面空白的解决方案

第一个想法就是需要对webpack进行一些兼容性配置,于是小编低下头默默的先进行了一通通用配置操作。

3 进行通用兼容性配置

由于本系统前端框架用到的脚手架是3.x版本,因此得针对cli3来进行配置。

3.1 对vue.config.js文件进行检查

3.2 引入polyfill

cnpm install es6-promise –D

3.3 配置presets

打开babel.config.js文件,将presets进行如下设置:

// vuecli3 不需要配置transform-vue-jsx
presets: [
  [
    '@vue/app',
    {
      useBuiltIns: 'entry',
      polyfills: ['es6.promise', 'es6.symbol']
    }
  ]
],
plugins: ['lodash', 'jsx-v-model']
}

3.4 入口文件的配置

打开main.js文件,将3.1安装的polyfill进行引入:

import Es6Promise from 'es6-promise'
Es6Promise.polyfill()

4 进行第三方库的排查

进行通用配置之后,仍然报错,这时候就可以确定剩下的原因是由于第三方插件引起的,需要在package.json文件中查看引入了哪些第三方库。

将可能会有兼容性问题的库引入到vue.config.js文件下的transpileDependencies集合中,经排查,将以下两个库补充进集合中:

transpileDependencies: [
    'vue-echarts',
    'resize-detector',
    'v-contextmenu',
    'vue-runtime-helpers'
  ]

5 测试

配置完成后,重新启动项目进行验证,这时候发现可以成功登录系统并进入首页:

Vue项目下IE报错 SCRIPT1003: 缺少 ':',导致页面空白的解决方案

到此为止这个问题也就解决了,可以顺利加载出登录页面,并且成功登进了系统。

顺利解决,喜大普奔hē hē hē hē。

关于作者:JeremyCC

一个爱唱歌的前端工程狮,喜欢我可以点关注噢!(头像仅供参考,哈哈)

Vue项目下IE报错 SCRIPT1003: 缺少 ':',导致页面空白的解决方案

声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。