Vue3项目ES6转ES5,兼容低版本的硬件设备,React也

1. 安装官方包

core-js@3 是目前最新稳定版,regenerator-runtime 处理生成器函数

npm install --save core-js@3 regenerator-runtime --legacy-peer-deps

2. 配置 Babel(关键:让垫片生效)

找到项目根目录的 babel.config.js(或 .babelrc),修改配置,指定 core-js 版本和垫片方式

复制代码
// 按需组装插件(保留你原有JSX、生产删console的逻辑)
const plugins = [
  '@vue/babel-plugin-transform-vue-jsx', 
  '@vue/babel-plugin-jsx'
]
// 生产环境自动添加移除控制台插件
if (process.env.VUE_APP_ENV === 'prod') {
  plugins.push('transform-remove-console')
}

module.exports = {
  compact: false,
  plugins: plugins, // 直接使用组装好的插件数组
  presets: [
    [
      '@vue/cli-plugin-babel/preset', // 保留Vue CLI原生preset(核心,不能删)
      {
        // 配置core-js垫片(替代babel-polyfill的核心配置)
        useBuiltIns: 'entry', // 强力模式:注入所有缺失特性的补丁
        corejs: 3, // 对应安装的core-js@3版本
        targets: { // 可选:按需兼容,Vue CLI会有默认值,可根据项目修改
          chrome: '50',
          firefox: '50',
          ie: '11',
          safari: '10',
          android: '5'
        }
      }
    ]
  ]
}
3. 全局引入 regenerator-runtime(处理 async/await)

找到项目的入口文件 (一般是 src/main.js / src/main.ts),在第一行引入:

复制代码
// main.js / main.ts 顶部
import 'core-js/stable'
import 'regenerator-runtime/runtime'
import Vue from 'vue'
import App from './App.vue'
// ... 其他代码

我生产遇到的问题

我是webpack打包,vue.config.js 中externals中打包到js中,设备识别不了语法

复制代码
 externals: {
        // vue: 'Vue',
        // 'lottie-web': 'lottie'
      },
相关推荐
何时梦醒14 分钟前
React + TypeScript + Vite 实战:从零构建 Color Picker 应用
前端·javascript·架构
Highcharts.js18 分钟前
基于Highcharts开发的OHLC 股票K线图完全指南
javascript·信息可视化·echarts·数据可视化·highcharts·ohlc
默_笙21 分钟前
😋 我让 DeepSeek-R1 在浏览器本地跑了起来,后端同事说"你认真的?"
前端·javascript
李明卫杭州2 小时前
Vue3 响应式概念 ↔ React 对应方案(类组件与函数组件)对照笔记
前端·vue.js·react.js
JasonMa1532 小时前
从零搭建一个微信小程序活动管理平台(一):架构设计与技术选型
javascript·微信小程序·node.js
半个落月2 小时前
React useEffect 详解:执行时机、依赖数组与副作用清理
react.js
tntxia2 小时前
React 的常用 Hook
react.js
古韵3 小时前
你的 uni-app 分页,一个 hook 搞定竞态和加载
javascript·vue.js·uni-app
成都渲染101云渲染66664 小时前
Blender渲染时,纯CPU渲染的设置教程
前端·javascript·blender
多加点辣也没关系5 小时前
JavaScript|第30章:事件机制
开发语言·javascript