位置: IT常识 - 正文

vue兼容ie11(@babel/polyfill、core-js@3两种方式)(vue兼容性)

编辑:rootadmin
vue兼容ie11(@babel/polyfill、core-js@3两种方式) Babel介绍:

推荐整理分享vue兼容ie11(@babel/polyfill、core-js@3两种方式)(vue兼容性),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue兼容到ie几,vue兼容性,vue兼容性问题怎么解决,vue兼容性问题,vue兼容到ie几,vue兼容到ie几,vue兼容性问题怎么解决,vue兼容到ie几,内容如对您有帮助,希望把文章链接给更多的朋友!

Babel是一个JavaScript编译器,主要用于将ECMAScript 2015+代码转换为当前和旧浏览器或环境中向后兼容的JavaScript版本。要是通过核心依赖core-js@2,主要是通过核心依赖core-js@2来完成对应浏览器不支持的新的全局和实例api的添加

方案一:@babel/polyfill

步骤1:安装@babel/polyfill

因为polyfill(将在源代码之前运行),我们需要它是一个依赖项,而不是devDependency,所以使用--save(-S)

npm install --save @babel/polyfill

步骤2:main.js

将@babel/polyfill放在应用程序入口点的顶部,确保在所有其他代码/需求语句之前调用它

import "@babel/polyfill" //在main.js的最上方引入import Vue from 'vue'import App from './App.vue'import router from './router'import http from '@/utils/request'

注意:我当时是在基于@vue/cli5+vue2的项目中,使用@babel/polyfill兼容的ie11,执行以上两步即可

cli5的babel.config.js如下,不需再做其他配置

//babel.config.jsmodule.exports = { presets: [ '@vue/cli-plugin-babel/preset' ]}

如果cli版本有差异,或许还需在webpack.config.js中配置(之前cli2的项目配置过,具体记不太清):

module.exports = { entry: ["@babel/polyfill", "./app/js"],};

你也可以不依赖@babel/preset-env提供的处理api兼容性的能力,直接使用@babel/polyfill来处理,也就是使用方案一,步骤简单,缺点是它内部引入了core-js2,又集成了regenerator-runtime,使用这套方案会把全部api特性都打包,会导致未使用的新api的引入及文件过大和全局污染

方案二:@babel/preset-env + core-js@3

 从Babel 7.4.0开始,@babel/polyfill软件包已被弃用,支持直接包含core js/stable(用于polyfill ECMAScript功能):

如果您正在将生成器或异步函数编译为ES5,并且使用的是早于7.18.0的@babel/core或@babel/plugin transform再生器版本,则还必须加载再生器运行时包。当使用@babel/preset env的useBuiltIns:“usage”选项或@babel/plugin转换运行时,它会自动加载。

vue兼容ie11(@babel/polyfill、core-js@3两种方式)(vue兼容性)

@babel/polyfill模块包括regenerator runtime 和core-js,以模拟完整的ES2015+环境。

步骤1:安装core-js@3

如果采用@babel/preset-env的polyfill方案不需要安装@babel/polyfill,只需要安装core-js(regenerator-runtime会在安装@babel/preset-env的时候自动安装),然后通过设置useBuiltIns选项来开启对api的兼容性处理。

注:目前使用cli4已经自动安装了core-js@3,所以无需额外npm安装(安装之前先查看package.json中是否已存在core-js@3)

import "core-js/stable"import 'regenerator-runtime/runtime'

步骤2:配置babel.config.js(当前使用使用cli4)

module.exports = { presets: [ '@vue/cli-plugin-babel/preset', ['@babel/preset-env', { useBuiltIns: 'entry', corejs: 3, }] ], plugins: []}

如果你没有安装不支持ie11的依赖,执行完步骤2,ie11就可以成功访问项目了,否则,还会报错

报错示例如下:

ie11报错如下

如图所示,报错信息指向了chunk-vendor.js的sockjs-client

步骤1:配置vue.config.js

因为node_modules里的依赖默认是不会编译的,会导致es6语法在ie中的语法报错,所以需要在vue.config.js中使用transpileDependencies属性配置node_modules中指定哪些文件夹或文件需要编译.

transpileDependencies:[/(sockjs-client)[/\\\\]/],

注意:配置完成之后重启项目,修改vue.config.js和babel.config.js都需要重启项目,否则不生效

如果使用vue的方式为直接<script>引入,则使用第三种方案

方案三:引入es6-promise.auto.min.js+bable-polyfill.min.js

示例:

<script type="text/javascript" src="js/es6-promise.auto.min.js"></script><script type="text/javascript" src="js/bable-polyfill.min.js"></script><script type="text/javascript" src="js/vue.js"></script><script type="text/javascript" src="js/axios.min.js"></script><script type="text/javascript" src="js/element-ui.js"></script>
本文链接地址:https://www.jiuchutong.com/zhishi/287329.html 转载请保留说明!

上一篇:睡莲怎么养及种植(睡莲怎样养)

下一篇:巴伐利亚州Schrecksee湖的全景图,德国 (© wingmar/E+/Getty Images)(巴伐利亚州地图)

  • 电脑管家怎么修复dll文件(电脑管家怎么修改下载路径)

    电脑管家怎么修复dll文件(电脑管家怎么修改下载路径)

  • 小米mix3如何打开通知栏(小米mix3如何打开后盖)

    小米mix3如何打开通知栏(小米mix3如何打开后盖)

  • 为什么社保网站打不开(为什么社保网站打印不了参保人员缴费信息)

    为什么社保网站打不开(为什么社保网站打印不了参保人员缴费信息)

  • 快手小店查不到订单怎么办(快手小店查不到物流信息怎么办)

    快手小店查不到订单怎么办(快手小店查不到物流信息怎么办)

  • qq定时发送消息的功能(qq定时发送消息软件)

    qq定时发送消息的功能(qq定时发送消息软件)

  • 拼多多账户资金限制还能拿出来吗(拼多多账户资金提现多久到账)

    拼多多账户资金限制还能拿出来吗(拼多多账户资金提现多久到账)

  • 华为畅享11plus什么时候上市(畅享11plus参数)

    华为畅享11plus什么时候上市(畅享11plus参数)

  • 淘宝个人主页能看到什么(淘宝个人主页能加好友吗)

    淘宝个人主页能看到什么(淘宝个人主页能加好友吗)

  • 抖音60秒以上视频怎么发(抖音60秒以上视频怎么做)

    抖音60秒以上视频怎么发(抖音60秒以上视频怎么做)

  • 微信删除该聊天群没了(微信删除该聊天是什么意思)

    微信删除该聊天群没了(微信删除该聊天是什么意思)

  • 腾达ac5是千兆的吗(腾达ac9是不是千兆)

    腾达ac5是千兆的吗(腾达ac9是不是千兆)

  • 5类6类水晶头通用吗(五类水晶头和六类水晶头通用)

    5类6类水晶头通用吗(五类水晶头和六类水晶头通用)

  • 滴滴账号注销后可重新申请吗(滴滴账号注销后车辆也一起注销了吗)

    滴滴账号注销后可重新申请吗(滴滴账号注销后车辆也一起注销了吗)

  • 家里没有电脑怎么装宽带(家里没有电脑怎么填报中考志愿)

    家里没有电脑怎么装宽带(家里没有电脑怎么填报中考志愿)

  • 苹果8p突然关机是什么原因(苹果8p突然关机开不了机是什么原因)

    苹果8p突然关机是什么原因(苹果8p突然关机开不了机是什么原因)

  • 微信能不能设置自动回复消息(微信能不能设置时间段消息免打扰)

    微信能不能设置自动回复消息(微信能不能设置时间段消息免打扰)

  • 苹果信息有个感叹号什么意思(苹果信息有个感叹号在闪)

    苹果信息有个感叹号什么意思(苹果信息有个感叹号在闪)

  • 怎么拼心形图片(如何拼心形图片)

    怎么拼心形图片(如何拼心形图片)

  • 手机屏幕ppi是什么意思(手机屏幕参数ppi)

    手机屏幕ppi是什么意思(手机屏幕参数ppi)

  • 怎么修改qq群名片(怎么修改QQ群名称)

    怎么修改qq群名片(怎么修改QQ群名称)

  • word的下划线怎么弄(word的下划线怎么删除)

    word的下划线怎么弄(word的下划线怎么删除)

  • 苹果手机1x什么意思(苹果手机1x什么时候发布)

    苹果手机1x什么意思(苹果手机1x什么时候发布)

  • 荣耀20有屏幕指纹解锁吗(荣耀20有屏幕指纹解锁么)

    荣耀20有屏幕指纹解锁吗(荣耀20有屏幕指纹解锁么)

  • 苹果x充电口防水吗(苹果x充电口防摔吗)

    苹果x充电口防水吗(苹果x充电口防摔吗)

  • 华硕主板bios关闭uefi(华硕主板bios关闭风扇检测)

    华硕主板bios关闭uefi(华硕主板bios关闭风扇检测)

  • 苹果手机卸载软件怎么找回(苹果手机卸载软件怎么卸载色猫回家)

    苹果手机卸载软件怎么找回(苹果手机卸载软件怎么卸载色猫回家)

  • qq扩列功能怎么开(qq扩列功能怎么找不到了2023)

    qq扩列功能怎么开(qq扩列功能怎么找不到了2023)

  • 已解决ERROR: Failed building wheel for opencv-python-headless(安徽4岁男孩户口已解决)

    已解决ERROR: Failed building wheel for opencv-python-headless(安徽4岁男孩户口已解决)

  • vue3项目中使用three.js(vue3用法)

    vue3项目中使用three.js(vue3用法)

  • 如何安装php的pcntl拓展?(phpipam安装)

    如何安装php的pcntl拓展?(phpipam安装)

  • 报税显示缺少组件怎么办
  • 工会账怎么做
  • 社保利息计入什么科目
  • 外贸公司进项票要专票还是普票
  • 在银行购买支票需要什么手续
  • 销售使用过的固定资产如何开票
  • 企业跨年补开发票
  • 出现哪些情形纳入医保
  • 划拨土地划转是什么意思
  • 购销合同赔偿比例一般多少
  • 购物返现活动文案
  • 员工借款会计科目
  • 你觉得微信提现收费合理吗?
  • 工资中的考核罚款会计怎么处理?
  • 营运资金的范畴包括哪些
  • 年终奖个税公式 2022
  • 单位自办食堂为单位职工提供餐饮服务要交增值税吗
  • 地下人防设置要求
  • 应收单据处理包括哪些
  • 出口货物怎么开具发票
  • 外国企业代表处企业所得税
  • 跨年如何冲减预提费用?
  • 如何禁止远程
  • php模块
  • 电脑卡机动不了怎么重启
  • vitem
  • h5调用海康摄像头
  • php文件用什么运行
  • vue组件继承element并重写方法
  • 支付属于借方吗?
  • 一般纳税人公司出售旧车怎么开票
  • 报税营业成本可以乱填吗
  • 2020注册谷歌账号方法
  • 2023值得推荐的手机
  • 二元运算例子
  • 用more命令查看文件内容
  • 有合同没有发票怎么入账
  • 增值税申报表33栏显示有欠缴税额
  • 26个字母!
  • sqlserver查询时报00bop错误
  • mongodb如何备份
  • 资金收益率的计算
  • 固定资产补入账和补提折旧
  • 印花税该是如何征收的
  • 给慈善机构捐款英语
  • 工程审图费入什么会计科目
  • 银行承兑汇票利息归谁
  • 应付账款的主要风险点
  • 规范的建账原则是什么
  • sqlserver的游标
  • bios设置的完整说法
  • windows性能监视器横坐标
  • win10显示请勿关闭电脑
  • 此windows副本不是正版黑屏
  • win7系统开机黑屏
  • 怎么在centos中创建一个文件
  • u盘安装linux系统遇到的问题
  • whagent.exe - whagent是什么进程
  • 如何修改注册表值
  • win7彻底删除的文件怎么恢复
  • linux历史操作
  • 搜索超级模式
  • windows10电脑声音
  • win8.1系统怎么激活
  • linux不小心删除目录怎么恢复
  • react-native-modal
  • android点击按钮弹出对话框
  • unity3d性能优化之贴图科普篇
  • node.js操作数据库报错不再队列中
  • jquery示例
  • jquery.form
  • python右斜杠怎么打出来
  • python中计数函数怎么用
  • 税控盘登录密码和口令
  • 增值税发票综合服务平台升级
  • 江西省国家税务局发票查询
  • 小微企业印花税减免政策2024
  • 法人注册怎么注册
  • 公司汽车用油计入什么科目
  • 国税局和地税局有什么区别
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设