一、问题描述

Vue CLI3打包上线后的代码使用IE11打开后是空白的,控制台报错:

SCRIPT1003: 缺少 ':'
app.js (304501,83045)

其他浏览器打开没问题,问题定位在:存在不兼容IE的代码

二、问题分析

首先要知道,IE不支持函数简写

data(){return {}
}

只能识别这种形式

 data: function () {return {}
}

还有其他的不兼容之处,最笨的办法是手动修改所有不兼容的地方

当然还有更优的解

看下配置文件package.json中设置的兼容浏览器配置

"browserslist": ["> 1%","last 2 versions"]

查询一下配置所代表的的浏览器, 可以发现IE10IE11都在其列,

所以,项目本身的代码应该是没问题的

https://browserl.ist/

点击控制台报错的地方app.js,发现是一个模块不支持IE导致的

三、问题处理

最简单的方式是将不兼容的第三方模块换掉,如果确实需要那此法不可行

另外一个方式是使用@babel/polyfill + babel.config.js配置

1、安装依赖

cnpm i @babel/polyfill -S

2、入口文件 main.js 引入依赖

import '@babel/polyfill';

3、修改 babel.config.js

module.exports = {presets: [['@vue/app',{useBuiltIns: 'entry'}]],
};

4、修改 vue.config.js

默认情况下 babel-loader 会忽略所有 node_modules 中的文件。如果你想要通过 Babel 显式转译一个依赖,可以在这个选项中列出来。

依赖较多,索性将所有的依赖都加上,不过会增加打包后的体积,比如我的项目从7.5M增加到了19.6M

module.exports = {transpileDependencies: process.env.NODE_ENV === "development" ? ["*"] : [],
}

另外,如果是babel-polyfill + webpack.config.js网上很多文章都是说这个的,可以参看:

https://github.com/PanJiaChen/vue-element-admin/wiki

参考

  1. Vue CLI浏览器兼容性
  2. Vue CLI 3 配置兼容IE10
  3. vue cli3 创建的项目在IE11中运行,出现白屏,通过console调试发现报错SCRIPT1003: 缺少 ':'文件: app.js,行: 7391,列: 3 #4131

Vue CLI3不兼容IE11打开空白报错SCRIPT1003: 缺少 ‘:‘相关推荐

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

    ❝ 今年年初加入了物资团队,遇到的第一个问题就是解决IE的兼容性问题. ❞ 1 现象 当时的情况是IE浏览器在登录系统时,登录页无法加载,页面显示空白,所以也无法访问系统里的其他页面. 2 查看报错 ...

  2. vue2打包兼容ie11白屏报错问题汇总

    vue2打包兼容ie11问题汇总 下载 babel-polyfill npm install --save-dev babel-polyfill main.js中引入 import "bab ...

  3. 兼容IE系统,报错SCRIPT1006: 缺少 ‘)‘

    系统使用IE系统打开报错截图: 第一步:使用npm安装babel-polyfill 依赖 npm install --sava babel-polyfill npm install --sava ba ...

  4. vue打包后有es6语法兼容问题,ie报错

    vue打包后有es6语法兼容问题,ie报错 (个人学习笔记,仅供参考): 情景:ie/360浏览器打开build之后的页面报错了,点击报错定位的时候发现有"const"和箭头函数语 ...

  5. ie11命令栏里打开页面设置报错“错误13 对象不支持“showPageSetupDialog属性或方法””

    ie11命令栏里打开页面设置报错"错误13 对象不支持"showPageSetupDialog属性或方法"" 设置一下默认打印机,恢复正常.(原来是window ...

  6. webview在android8.0,解决Android8.0系统应用打开webView报错

    由于webView存在安全漏洞,谷歌从5.1开始全面禁止系统应用使用webview,使用会导致应用崩溃错误提示:Caused by: java.lang.UnsupportedOperationExc ...

  7. 修复Unity空白报错问题

    修复Unity空白报错问题 在升级Unity Hub之后,偶然发现Console里有几行空白的报错,看不到任何信息,由于有报错,导致修改代码无法生效.尝试重启项目,重装Unity都完全没效果.而且就算 ...

  8. [Android]打开eclipse报错:发现了以元素 'd:skin' 开头的无效内容。此处不应含有子元素。...

    [错误]  打开eclipse报错:发现了以元素 'd:skin' 开头的无效内容.此处不应含有子元素. [具体报错信息]  Error parsing D:\android-sdks\system- ...

  9. eclipse mat 分析dump文件,打开文件报错,out of memeory

    eclipse mat 分析dump文件,打开文件报错,out of memeory 解决: 1.打开eclipse报out of memeory通用 window-->Preferences- ...

最新文章

  1. mysql1846错误_远程连接MySQL报错ERROR 2003解决办法
  2. Python之日志处理(logging模块)详解
  3. 正则表达式去除括号的问题
  4. 兼容FireFox和IE8的设为首页和添加收藏
  5. 深入浅出MySQL数据库开发、优化与管理维护
  6. 蓝牙耳机买什么好?2021值得入手的蓝牙耳机推荐
  7. 自学系列-有哪些高质量的自学网站
  8. html正方体旋转效果,纯CSS3超酷3D旋转立方体动画特效
  9. 1、当鼠标移动到目标上的时候,自动显示一个提示框。
  10. Logback第八章:MDC(Mapped Diagnostic Context)
  11. Java正则匹配字母,数字,特殊字符
  12. 免费影视资源如何引流?如何通过分享影视资源引流
  13. Scala中过滤操作filter与filterNot函数
  14. android仿微信发布动态功能,Android GridView扩展仿微信微博发图动态添加删除图片功能.pdf...
  15. 在cordova中处理原生键盘相关问题的总结,mark供参考
  16. js如何截取某个字符串前面所有的字符串
  17. 运营方案要包括哪些内容_一份完整的运营方案应该包括哪些方面?
  18. 如何选择加密软件保护公司数据安全
  19. 无痕刷新token-无需提供刷新token接口方式
  20. vue接入点聚weboffice打开在线文档报系统错误

热门文章

  1. kettle连接不上es7_kettle常见问题解决
  2. sql2java-excel(二):基于apache poi实现数据库表的导出的spring web支持
  3. 路径与轨迹、路径规划与轨迹规划、路径跟踪与轨迹跟踪
  4. it系统应急响应流程图_各类突发事件应急处置流程图,速看!
  5. 建模:蒙特卡洛法求多重积分
  6. 什么是嵌入式服务器?为什么要使用嵌入式服务器? -- java面试
  7. Mac 上简体中文输入方式的键盘快捷键
  8. #Paper Reading#Modeling Task Relationships in Multi-task Learning with Multi-gate Mixture-of-Experts
  9. Android项目开发:简易计步器
  10. PDF文件怎么拆分?看完就会了!