位置: 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面试题)

  • lte版与wifi版的区别(lte)(lte版和wlan版有什么不同)

    lte版与wifi版的区别(lte)(lte版和wlan版有什么不同)

  • 微信怎么艾特群里的一个人(微信怎么艾特群里人)

    微信怎么艾特群里的一个人(微信怎么艾特群里人)

  • word怎么插入图片(怎么在word里插图片不影响格式)

    word怎么插入图片(怎么在word里插图片不影响格式)

  • 拍朋友圈视频怎么加音乐(拍朋友圈视频怎样播放酷狗音乐)

    拍朋友圈视频怎么加音乐(拍朋友圈视频怎样播放酷狗音乐)

  • 抖音作品分类如何设置(抖音怎么进行作品分类)

    抖音作品分类如何设置(抖音怎么进行作品分类)

  • 多个路由器连接怎么设置不会冲突(多个路由器连接方法)

    多个路由器连接怎么设置不会冲突(多个路由器连接方法)

  • 微信可以监控的吗(微信可以监控的软件)

    微信可以监控的吗(微信可以监控的软件)

  • 淘宝怎么复制会员名(淘宝怎么复制会员卡)

    淘宝怎么复制会员名(淘宝怎么复制会员卡)

  • 微信新号怎么不被封号(微信新号怎么不绑定银行卡实名认证)

    微信新号怎么不被封号(微信新号怎么不绑定银行卡实名认证)

  • 电脑点不亮风扇都在转(电脑点不亮风扇狂转)

    电脑点不亮风扇都在转(电脑点不亮风扇狂转)

  • 骁龙和高通骁龙的区别(骁龙和高通骁龙的区别 新闻)

    骁龙和高通骁龙的区别(骁龙和高通骁龙的区别 新闻)

  • 淘宝问大家提问者可以删除吗(淘宝问大家提问了商家怎么不显示)

    淘宝问大家提问者可以删除吗(淘宝问大家提问了商家怎么不显示)

  • 一+手机是什么牌子(一+手机是哪个国家的)

    一+手机是什么牌子(一+手机是哪个国家的)

  • 耳机转接头插上没反应(耳机转接头插上有滋滋声)

    耳机转接头插上没反应(耳机转接头插上有滋滋声)

  • 红米6a能装内存卡吗(红米6a可不可以装内存卡)

    红米6a能装内存卡吗(红米6a可不可以装内存卡)

  • 办理手机卡需要什么(办理手机卡需要满18周岁吗)

    办理手机卡需要什么(办理手机卡需要满18周岁吗)

  • 酷狗播放怎么显示歌词(酷狗播放怎么显示在主屏上)

    酷狗播放怎么显示歌词(酷狗播放怎么显示在主屏上)

  • 抖音怎么开店及开店要求(抖音里面如何开店)

    抖音怎么开店及开店要求(抖音里面如何开店)

  • 键盘贴膜影响散热吗(键盘贴膜好不好)

    键盘贴膜影响散热吗(键盘贴膜好不好)

  • 手机淘宝有夜间模式吗(手机淘宝有夜间模式嘛)

    手机淘宝有夜间模式吗(手机淘宝有夜间模式嘛)

  • 怎样取消拼多多月卡自动续费(怎样取消拼多多免密码支付)

    怎样取消拼多多月卡自动续费(怎样取消拼多多免密码支付)

  • 阿里云邮箱如何改密码(阿里云邮箱如何撤回邮件)

    阿里云邮箱如何改密码(阿里云邮箱如何撤回邮件)

  • qq文件传输助手在哪里(QQ文件传输助手图片)

    qq文件传输助手在哪里(QQ文件传输助手图片)

  • oppo手机怎么重启手机(oppo手机怎么重置锁屏密码)

    oppo手机怎么重启手机(oppo手机怎么重置锁屏密码)

  • 华为nove5支持5g吗(华为nove5支持nfc吗?)

    华为nove5支持5g吗(华为nove5支持nfc吗?)

  • 苹果手机网易云下载的音乐在哪里(苹果手机网易云下载的音乐怎么导出)

    苹果手机网易云下载的音乐在哪里(苹果手机网易云下载的音乐怎么导出)

  • 手机qq怎么看屏蔽的人(手机qq怎么看屏蔽了哪些人)

    手机qq怎么看屏蔽的人(手机qq怎么看屏蔽了哪些人)

  • Win11 Build 23435 预览版今日发布: 文件管理器引入图库功能

    Win11 Build 23435 预览版今日发布: 文件管理器引入图库功能

  • php中while和do...while有何不同(php的do while语句)

    php中while和do...while有何不同(php的do while语句)

  • 一般纳税人的税收优惠政策
  • 固定资产折旧方法年数总和法
  • 开具增值税发票哪些情形不用交税?
  • 小规模纳税人可以开什么发票
  • 进项税额转出意思是下月还得缴吗
  • 先开票后跨月预缴税款可以吗
  • 开票资料银行必须填写吗
  • 物业缴纳发票可以抵税吗
  • 劳务外包可以差额纳税吗
  • 分公司缴税企业所得税
  • 党费奖励需要交个税吗
  • 享受企业所得税三免三减半优惠的起始时间
  • 房产税和土地使用税会计分录
  • 小规模纳税人购置税控设备
  • 政府电费补贴文件
  • 公司注册前发生费用没有发票怎么办
  • 固定资产更换配件怎么界定是否满足资本化
  • 行政单位在建工程入账
  • 无形资产增值税计入入账价值吗
  • 房地产企业如何计算增值税
  • 现金返利怎么做账
  • 企业不动产如何带抵押转让
  • 本年利润有期末余额吗
  • 电子发票跨月怎么开红字发票
  • 一般纳税人专用发票怎么做账
  • i912900k用什么主板好
  • 一年内到期的应付债券计入
  • 一般纳税人劳务发票税点多少
  • 对公账户一直没有流水怎么办
  • 资产报废对企业的好处
  • 开源鸿蒙适配
  • 税收保全有哪些
  • PHP:pg_last_notice()的用法_PostgreSQL函数
  • 苹果发布macOS13.3预览版
  • 固定资产盘盈会影响所有者权益吗
  • 预付工程施工款会计分录
  • 工程建设的项目的划分?
  • 企业将设备出租应当作为固定资产吗
  • 模型如何优化
  • 猿厂猿作设计机构招聘
  • vue cannot set property
  • 现金零星支出大还是小
  • mysql 5.7特性
  • 其他应收款资产类
  • 资本成本在财务报表中怎么体现
  • 物流公司驾驶员工资计算方式
  • 增值税发票跨月红冲操作流程
  • 营业成本包含折旧和摊销吗
  • 收到境外企业顾问费
  • sql server 2008保存数据库
  • 消费税和资源税何时计入成本,何时计入费用
  • 伙食费怎么入账
  • 汽车修理厂会计账务处理
  • 固定资产处置的净收入计入
  • 个税专项附加扣除什么意思
  • 储值卡金额算什么资产
  • 非货币性资产交换以公允价值为基础进行计量
  • 服务合同开什么发票
  • 债务重组损失计入什么科目2020
  • 企业开负数发票退货后如何处理?
  • 在建工程进项税额抵扣最新通知
  • 资产负债表日后非调整事项应当在附注中披露
  • 转让股权取得的收入是营业收入吗
  • 收到对公打款认证怎么入账
  • 明细账示例图
  • win10入门全教程视频
  • vmware虚拟机怎么改用户名
  • windows z
  • 2016年最火的歌曲排行前100首
  • 虚拟内存扩大有什么好处
  • 创建nodejs 基于express项目
  • css样式表可以兼容所有浏览器吗
  • jquery全选和全不选效果
  • jquery如何解决跨域问题
  • js class 私有方法
  • js foreach倒序
  • 在文件中偏移量为
  • 增值税发票的发票号码和发票代码
  • 税务师事务所行政登记表怎么办理
  • 契税计税依据含装修费吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设