位置: IT常识 - 正文

整理各种Vue项目在IE浏览器白屏报错 SCRIPT1002:语法错误(vue项目中技巧知识点)

编辑:rootadmin
整理各种Vue项目在IE浏览器白屏报错 SCRIPT1002:语法错误

目录

一、关于 sockjs-client 依赖包

二、关于 highlight 依赖包

三、关于 swiper 依赖包

四、IE 不支持 ES6 语法

五、第三方插件引入导致

六、本地环境正常,生产环境仍旧白屏


推荐整理分享整理各种Vue项目在IE浏览器白屏报错 SCRIPT1002:语法错误(vue项目中技巧知识点),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue项目各个文件介绍,vue项目中技巧知识点,vue app项目,vue项目中技巧知识点,vue项目实战教程,vue项目各个文件介绍,完整的vue项目,vue项目实战教程,内容如对您有帮助,希望把文章链接给更多的朋友!

这篇文章主要介绍了 Vue 项目在 IE 浏览器显示白屏并报错 SCRIPT1002: 语法错误 的案例

一、关于 sockjs-client 依赖包

Bug 背景 :接手一个新项目 ,npm run dev 启动服务器之后默认打开的是 谷歌浏览器 , 

后来发现项目在 IE 浏览器 打开后 白屏 , F12 打开控制台后报错信息显示如下 :

SCRIPT1002:语法错误

文件:app.js,行:207536,列:23

点击报错信息后展示(当时的报错没有截图,用的别人的图)

    像这种根本就没法排查错误 ,就很恼火啊!

百度了一堆 ,全是抄来抄去,关键是还没有能解决问题的 ,万能的谷歌走起

    其实对于这个问题很明显就是 语法错误 ,就是 IE 不支持 的问题 ,IE 垃圾 。。

既然是语法的问题 ,那就是 编译的问题 ,那么咱们就直接编译对应的包 ,

但是那是哪个包呢 ?

重点来了:点开报错信息 ,会发现 断点 在的地方就是 报错的地方 ,

那肯定就是这里的问题了,但是这是编译后的代码,怎么排查是哪个包呢 ?

突然发现 上面的注释 不就是这个 包的名字 吗 ???

恍然大悟 ,犹如发现新大陆 !

./node_modules/_js-base64@3.6.2@js-base64.js

就是他了,此图不是我的报错信息,我的报错信息是

一个关于 sockjs-client 依赖包 的原因 ,

经过排查 , 是因为 sockjs-client 版本太低了(@1.5.0), 版本升级一下就好了命令是 : $ npm install sockjs-client@1.5.1 -D ,运行一下 , 重启一下就好了

但是自行检查过程中并没有在 package.json 文件中找到 sockjs-client 这个依赖包

后来得知 sockjs-client 依赖包 并没有显示在 package.json 文件里面 , 

而是在 package-lock.json 文件里 , 可以找到 “sockjs-client”: "^1.5.0",

运行完升级命令之后 ,就会在 package.json 文件 的 “devDependencies” 下面看到 :

“sockjs-client”: "^1.5.1" ,

总结就是 : package.json 里面没有,就是在 package-lock.json 里面 🈶️

但是 , 后来我试了一下 npm uninstall sockjs-client ,把这个依赖包卸载后

IE 浏览器依旧可以正常打开并且显示不白屏了 , 就很神奇 。 

也可能是因为 package-lock.json 里面的配置随着升级依赖包时已经改好了吧

需求背景 : 半年前开发的项目今天再次启用时 , 发现谷歌浏览器正常打开 , IE 却

又又又 白屏 了 ??? 之前还是好的 , 哎 , 没办法 , 再想办法解决吧 。。。

而且这回 IE 还有个“毛病”就是控制台在开启状态时进入页面时 , 它会自动进入断点模式 ,

1、断点进入的第一个位置显示如下图 :(此时页面白屏,加载不出来)

整理各种Vue项目在IE浏览器白屏报错 SCRIPT1002:语法错误(vue项目中技巧知识点)

其实这里大致就能看出来端倪了 , 又是 node_modules 里面一个 关于 sockjs-client 依赖包

出了问题 , 发现大多都跟这个包有关系哎 。。

2、清理IE浏览器缓存后 , 这里页面显示 无法显示此页 (断点运行结束)

2-2、断点运行继续下一个位置显示如下图:

( 此时页面其实是可以加载出来了 ,但出现报错 )

控制台报错如下图所示 :

SCRIPT5022: SecurityError

文件:sockjs.js,行:1687,列:3

我另一个前端同事的报错信息是 :

SCRIPT1002:语法错误

解决方案 :

将 sockjs-client 依赖包版本调整一下版本(升级或降级)

package-lock.json   原版本信息如下图所示 :

npm install sockjs-client@1.5.1 -D

下载安装完新的依赖包之后 , 再重新启动项目 , 

发现 IE 浏览器打开控制台也不会再自动断点了 , 页面也能够正常展示无报错 。

"devDependencies": { "sockjs-client": "^1.5.1" }二、关于 highlight 依赖包

我依稀记得当初好像是因为在 main.js 文件内引用了 highlight 依赖 (一个高亮插件)

"highlight.js": "^10.7.1" , 我隐约记得是这个依赖包版本 , 老早之前了 。

所以导致了 IE 浏览器打开显示白屏并且控制台报错。

当时解决方案就是 : 直接删掉了那个引用依赖 , 因为项目中也用不到了 ,所以解决了 。

三、关于 swiper 依赖包

四、IE 不支持 ES6 语法

configureWebpack: config => { config.entry.app = ["babel-polyfill", "./src/main.js"]; },五、第三方插件引入导致

由于项目使用了 长连接库 socket.io-client 和 vue-socket.io-extended ,

在 main.js 是中使用方法是 :

import VueSocketIOExt from 'vue-socket.io-extended';import io from 'socket.io-client';const socket = io(process.env.VUE_APP_IO_URL);Vue.use(VueSocketIOExt, socket);

我把这四行代码 注释掉 之后 , 神奇的 IE 不白屏了 ,但业务需要 IE11 是不能放弃长连接的 ,

经过尝试发现是 socket.io-client 这个 插件 在使用 import 引入时导致的问题 。

解决方法一 :

1、将 main.js 调整为:

import VueSocketIOExt from 'vue-socket.io-extended';const socket = io(process.env.VUE_APP_IO_URL);Vue.use(VueSocketIOExt, socket);

2、socket.io-client 改为在 public / index.html 文件 head 中引入 :

<script src="https://cdn.bootcdn.net/ajax/libs/socket.io/2.3.0/socket.io.slim.js"></script>

解决方法二 :

保留 main.js 对第三方插件的引入不变 ,

只需要在 vue.config.js 的 transpileDependencies 添加要显示依赖的插件即可 :

transpileDependencies:['socket.io-client'],// transpileDependencies:['*'],

transpileDependencies 的作用是 :

默认情况下 babel-loader 会忽略所有 node_modules 中的文件。

如果你想要通过 Babel 显式转译一个依赖 ,可以在这个选项中列出来。

六、本地环境正常,生产环境仍旧白屏

本文链接地址:https://www.jiuchutong.com/zhishi/287101.html 转载请保留说明!

上一篇:莱姆里杰斯的Cobb防波堤,英格兰多塞特 (© Ross Hoddinott/Offset by Shutterstock)(莱姆 惨败)

下一篇:以下是Uniapp面试题及其答案(uni app面试题)

  • 成都青羊区专业代理记账靠谱_透明消费_最低报价_零申报(成都青羊区专业男性专科医院)

    成都青羊区专业代理记账靠谱_透明消费_最低报价_零申报(成都青羊区专业男性专科医院)

  • 苹果手机水印功能在哪(苹果手机水印功能怎么用)

    苹果手机水印功能在哪(苹果手机水印功能怎么用)

  • 苹果手机app刷新打不开怎么办(苹果手机app刷新关闭有什么影响)

    苹果手机app刷新打不开怎么办(苹果手机app刷新关闭有什么影响)

  • 微信群主退出群聊群还在吗(微信群主退出群聊后会解散群吗)

    微信群主退出群聊群还在吗(微信群主退出群聊后会解散群吗)

  • 华为手机怎么打出来圆圈1(华为手机怎么打开OTG功能)

    华为手机怎么打出来圆圈1(华为手机怎么打开OTG功能)

  • sarm是什么(sarm是什么车)

    sarm是什么(sarm是什么车)

  • iphonese支持无线充电吗(iphonese可不可以无线充电)

    iphonese支持无线充电吗(iphonese可不可以无线充电)

  • vivo x50发布会时间(vivo x50pro+发布会)

    vivo x50发布会时间(vivo x50pro+发布会)

  • 抖音直播挂小黄车有什么条件(抖音直播挂小黄车会影响推流吗)

    抖音直播挂小黄车有什么条件(抖音直播挂小黄车会影响推流吗)

  • 爱奇艺id号怎么查(求爱奇艺账号)

    爱奇艺id号怎么查(求爱奇艺账号)

  • pc设备是什么意思(电脑pcl设备)

    pc设备是什么意思(电脑pcl设备)

  • 爱奇艺会员怎么赠送(爱奇艺会员怎么取消自动续费)

    爱奇艺会员怎么赠送(爱奇艺会员怎么取消自动续费)

  • 1.7ghz八核处理器什么意思(1.8ghz八核处理器)

    1.7ghz八核处理器什么意思(1.8ghz八核处理器)

  • 荣耀9x4g内存够用吗(荣耀9x的内存)

    荣耀9x4g内存够用吗(荣耀9x的内存)

  • 微型计算机一般按什么进行分类(微型计算机一般采用( )来描述运算速度(1.0))

    微型计算机一般按什么进行分类(微型计算机一般采用( )来描述运算速度(1.0))

  • 淘宝皮肤怎么设置(淘宝皮肤怎么设置白色)

    淘宝皮肤怎么设置(淘宝皮肤怎么设置白色)

  • 免拼卡怎么手动赠送(使用免拼卡算拼单成功吗)

    免拼卡怎么手动赠送(使用免拼卡算拼单成功吗)

  • 苹果笔记本怎么查型号(苹果笔记本怎么截图)

    苹果笔记本怎么查型号(苹果笔记本怎么截图)

  • 拼多多月销量会清零吗(拼多多销量会影响权重吗)

    拼多多月销量会清零吗(拼多多销量会影响权重吗)

  • 抖音关注取消有痕迹吗(抖音关注取消有没有影响)

    抖音关注取消有痕迹吗(抖音关注取消有没有影响)

  • iPhone11什么基带(iphone11啥基带)

    iPhone11什么基带(iphone11啥基带)

  • 苹果5s微信如何更新(苹果五怎么使用微信)

    苹果5s微信如何更新(苹果五怎么使用微信)

  • tt语音怎么退出公会群(tt语音怎么修改地址)

    tt语音怎么退出公会群(tt语音怎么修改地址)

  • 苹果电脑如何提高音质?提升Mac音质效果教程介绍(苹果电脑如何提高网速)

    苹果电脑如何提高音质?提升Mac音质效果教程介绍(苹果电脑如何提高网速)

  • Win10系统txt文件打不开怎么办?(win10打开txt)

    Win10系统txt文件打不开怎么办?(win10打开txt)

  • 如何在硬件不受支持的 PC 上安装 Windows11(如何让电脑硬件损坏)

    如何在硬件不受支持的 PC 上安装 Windows11(如何让电脑硬件损坏)

  • 使用Session和cookie会话对象实现简单购物车功能(超详细)(使用session的步骤)

    使用Session和cookie会话对象实现简单购物车功能(超详细)(使用session的步骤)

  • sleep命令  延迟当前命令的执行(命令行延时)

    sleep命令 延迟当前命令的执行(命令行延时)

  • 房屋出租何时缴税
  • 房子税票是什么意思
  • 普通发票税额没有打印全可以用么
  • 汽车加油增值税发票
  • 代收款有手续费怎么做账
  • 分公司可以成为单位犯罪的主体吗
  • 房产税从租计征12%是年税率吗
  • 增值税发票认证是什么意思
  • 持有至到期投资账务处理
  • 支付境外销售佣金是不是属于完全在境外发生的服务
  • 公司进行债务重构的原因可能包括
  • 押金放到哪个会计科目
  • 普通发票跨年作废有影响吗
  • 年底结转损益是什么意思
  • 增值税已抵扣还能退税吗
  • 税务局怎么知道你的收入
  • 公园门票可以开发票吗
  • 销售已作进项税转出的固定资产怎样缴税?
  • 广告业公司成立时的资金如何记账?
  • 4s店开业有什么优惠
  • 所得税申报填写
  • 企业打给个人的费用如何节省个税
  • 应收账款未计提坏账,但是确实收不回来
  • 营改增后还要交营业税吗
  • swupdtmr.exe - swupdtmr进程是什么意思 什么作用
  • 冲红发票会计分录大全
  • 腾讯电脑管家上的steam可以吗
  • 如何更改文件的创建时间
  • 进项发票失控怎么办
  • win7纯净版怎么联网
  • uniapp自定义下拉刷新上拉加载
  • css合并为单一边框
  • 外国人在中国工作有五险一金吗
  • vue数据更新会触发什么生命周期
  • 直接将word转化为ppt
  • 劳务公司成本票不够怎么办
  • react devtools
  • yolov5训练自己的模型配置到单片机
  • 中秋快乐的祝福语怎么说
  • mysql中regexp_substr函数的使用
  • 帝国cms使用手册
  • 发票作废发票怎么处理
  • 私人打款到对公账户要交税吗
  • 企业收到银行未收到怎么做账
  • linux mongodb配置文件
  • curl抓包
  • 装修款需要开发票吗
  • 事务所企业所得税
  • 发票已开不确认收入可以做吗?
  • 信息技术服务费的税率是多少
  • 外经证适用范围
  • 出口收汇核销单是什么意思
  • 盈余公积的用途主要是
  • 纳税申报表多缴了怎么办
  • 暂估入账错误了怎么办
  • 对公账户可以转让吗
  • 进项大于销项如何做分录
  • 汇兑损益的账务处
  • 营业外支出会导致所有者权益减少吗
  • 错开发票所需要提供的资料以及时效要求是?
  • 判断数据库表是否为空
  • mac怎么修改默认应用
  • redhat linux6.5安装教程
  • win7系统u盘打不开怎么办
  • emule.td文件怎么打开
  • ISBMgr.exe - ISBMgr是什么进程 有什么作用
  • win8 设置
  • win10家庭版如何设置永不更新
  • win7浏览器怎么升级到最新版
  • 新手学做ppt
  • 安装perl模块
  • nodejs查找文件
  • 修改安卓app权限教程
  • pythonweb框架有哪些
  • linux定时备份文件
  • python做应用软件界面
  • unity3d坐标转换平面坐标代码
  • JQuery EasyUI Layout 在from布局自适应窗口大小的实现方法
  • android ui自动化测试
  • 分红太多
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设