位置: 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)(巴伐利亚州地图)

  • 苹果13promax有256g吗(苹果13promax有红外线遥控功能吗)

    苹果13promax有256g吗(苹果13promax有红外线遥控功能吗)

  • 钉钉作业提交不了怎么办(钉钉作业提交不上去图片)

    钉钉作业提交不了怎么办(钉钉作业提交不上去图片)

  • 消息已发出但被对方拒收了对方能看到吗(消息已发出但被对方拒收了是拉黑还是删除)

    消息已发出但被对方拒收了对方能看到吗(消息已发出但被对方拒收了是拉黑还是删除)

  • 耳机寿命是多久(耳机寿命一般多久)

    耳机寿命是多久(耳机寿命一般多久)

  • 三星s10能不能用25瓦快充(三星s10能不能用北斗导航)

    三星s10能不能用25瓦快充(三星s10能不能用北斗导航)

  • 微信群里下载文件别人知道吗(微信群文件下载)

    微信群里下载文件别人知道吗(微信群文件下载)

  • 电脑没有网线怎么上网(电脑没有网线怎么连接网络)

    电脑没有网线怎么上网(电脑没有网线怎么连接网络)

  • 脏数据是指什么(在db技术中脏数据是指什么)

    脏数据是指什么(在db技术中脏数据是指什么)

  • 微信实名认证是不是只能用一次(微信实名认证是未成年有什么限制)

    微信实名认证是不是只能用一次(微信实名认证是未成年有什么限制)

  • 纯流量卡需要注销吗(纯流量卡需要注销吗已实名制怎么办)

    纯流量卡需要注销吗(纯流量卡需要注销吗已实名制怎么办)

  • iphonexr电池健康掉的很快(iphoneXR电池健康状态79如何使用能延长电池寿命)

    iphonexr电池健康掉的很快(iphoneXR电池健康状态79如何使用能延长电池寿命)

  • amd3600x配什么主板(适合amd3600x的主板)

    amd3600x配什么主板(适合amd3600x的主板)

  • 华为荣耀9青春版支持type-c接口吗(华为荣耀9青春版)

    华为荣耀9青春版支持type-c接口吗(华为荣耀9青春版)

  • 华为mate20pro不带指纹吗(华为mate20pro不带屏幕指纹解锁)

    华为mate20pro不带指纹吗(华为mate20pro不带屏幕指纹解锁)

  • 华为桌面圆圈怎么取消(华为桌面圆圈怎么弄掉?)

    华为桌面圆圈怎么取消(华为桌面圆圈怎么弄掉?)

  • 拼多多怎样无需物流发货(拼多多怎么设置不用免密支付)

    拼多多怎样无需物流发货(拼多多怎么设置不用免密支付)

  • vue怎么加动态字幕(vue动态添加方法)

    vue怎么加动态字幕(vue动态添加方法)

  • 怎么关掉震动小米(振动怎么关闭)

    怎么关掉震动小米(振动怎么关闭)

  • qq如何注销实名认证(qq如何注销实名认证身份证)

    qq如何注销实名认证(qq如何注销实名认证身份证)

  • 微课掌上通怎么换学校(微课掌上通怎么登录两个孩子)

    微课掌上通怎么换学校(微课掌上通怎么登录两个孩子)

  • 苹果xr亮度怎么老变暗(苹果xr亮度怎么调到最亮)

    苹果xr亮度怎么老变暗(苹果xr亮度怎么调到最亮)

  • 华为rne一al00什么型号(华为rne一al00什么型号手机)

    华为rne一al00什么型号(华为rne一al00什么型号手机)

  • apple id电话号码更改(appleid电话号码已经被使用)

    apple id电话号码更改(appleid电话号码已经被使用)

  • 天猫差评对卖家有何影响(给天猫店差评买家的评价管理会显示吗)

    天猫差评对卖家有何影响(给天猫店差评买家的评价管理会显示吗)

  • Mac升级后出现facetime相机不可用该怎么办?(macos升级报错)

    Mac升级后出现facetime相机不可用该怎么办?(macos升级报错)

  • 发财树叶子发黄怎么办(发财树叶子发黄怎样补救)

    发财树叶子发黄怎么办(发财树叶子发黄怎样补救)

  • 简易计税是什么税种
  • 住宿费可以抵扣进项吗
  • 销项税额计算公式依据
  • 生育津贴是否需要纳税
  • 增值税专票已经报税作废不了怎么办
  • 办公室电话费计入什么科目
  • 原材料入库进项税
  • 应付票据和应付债券
  • 以前年度影响利润吗
  • 一般纳税人技术服务免税发票怎么开
  • 开出商业承兑汇票到期会计分录
  • 凭证审核签字操作只能
  • 票据贴现利息费用计入
  • 房产税按租金收入
  • 被收购的收入计什么科目
  • 固定资产暂估入账的账务处理
  • 由于疏忽装修费用之前没有摊销应如何处理
  • 土地增值税清算时间
  • 成本核算会计科目包括
  • 上海航交所官网
  • 福利费的发票可以开什么内容
  • 增值税普通发票怎么开
  • 企业所得税税前扣除异常
  • 生产企业出口退税退的是哪部分的税
  • 金税盘抄税报税流程
  • 关于进项税额转出的规定
  • 同一地级行政区范围内举例
  • 公司当年福利费没有用到限额,可以按照14%计提税前扣除吗?
  • 酒店挂账要做收款凭证吗
  • 广告费发票收到但是不抵扣怎么做账?
  • 小规模付增值税怎么做账
  • 财务科目明细表格模板
  • 企业一次性支付多年费用 不摊销
  • 多发的奖金收回怎么做账
  • 建筑工程分包怎么纳税
  • linuxnl
  • 属于项目的一个实例
  • php tr td
  • scrtkfg.exe - scrtkfg是什么进程 有什么用
  • 视同销售收入税法处理
  • 国产设备投资抵免企业所得税
  • 产品成本核算应正确划分哪些方面的费用界限
  • 减征增值税会计处理
  • 矿产资源补偿费与采矿权价款区别
  • 关于php中一些字符的数据
  • 猿创部落科技有限公司
  • 差旅费住宿专票可以抵扣吗
  • 办公室清洁费计算公式
  • 工会经费计提的会计分录
  • 员工离职后个税申报系统如何操作
  • 记账复核是谁
  • MongoDB的mongo shell常用操作方法及操作脚本笔记
  • mongodb聚合函数详解
  • 残疾人就业保障金申报时间
  • 预收账款如何做账务处理
  • 出口运保费是什么费用
  • 充油卡未收发票怎么办
  • 营业外收支主要有哪些
  • 房屋租赁费交什么税
  • 普通发票的开具办法是?
  • 农民专业合作社法
  • 二类银行卡转账能收多少钱
  • 在sql中执行一个创建数据表的脚本文件
  • mysql怎么把列变成行
  • win7桌面库图标怎么删除
  • unix含义
  • win10添加闹钟
  • raid主要使用三种技术
  • win10通讯设置在哪
  • centos7安装软件包命令
  • linux中vi编辑器怎么使用
  • 深入理解ffmpeg pdf
  • 基于springboot的毕设
  • Shell脚本统计文件行数
  • centos 安装pip3
  • Windows上使用PD虚拟机
  • 公共配套设施如何计算成本
  • 香港pcc价格
  • 科技公司小规模纳税人
  • 税控盘操作指南
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设