两个月没来公司上班,今日开工遇到一个及其有意思的问题:Jenkins 线上打包前端代码,在控制台日志中打包的时候报错:

When setting `useBuiltIns: 'usage'`, polyfills are automatically imported when needed.
Please remove the direct import of `@babel/polyfill` or use `useBuiltIns: 'entry'` instead.
ERROR  TypeError: StackFrame is not a constructor

因为疫情期间大家都是居家办公,Jenkins 服务器配置和前端项目配置都没有改动,所以看到这种报错一时无从下手,但是可以看出这是 @babel/polyfill 引入出了问题,具体啥问题下面梳理一下;
1、翻译报错信息

当设置' useBuiltIns: 'usage'时,需要的时候会自动导入腻子脚本。
请删除直接导入' @babel/polyfill '或使用' useBuiltIns: 'entry'代替。

猛的一看不知道这个到底是啥意思;

2、查找 babel 配置
项目是 vue-cli3 搭建的,找到了 babel.config.js 文件:

module.exports = {presets: [// https://github.com/vuejs/vue-cli/tree/master/packages/@vue/babel-preset-app'@vue/cli-plugin-babel/preset']
}

vue/cli-plugin-babel/preset 在 node_module 里面看的话最后引用的是 vue/babel-preset-app 也就是代码中注释的地址:https://github.com/vuejs/vue-cli/tree/master/packages/@vue/babel-preset-app

3、vue/babel-preset-app 中的 useBuiltIns
在 vue/babel-preset-app 预设中可以看到关于 useBuiltIns 的配置:

大概意思如下
usage:默认值,按需加载 polyfill,且不需要手动引入@babel/polyfill 文件,如果引入了控制台在打包时会报错(如上);
entry:需要在入口文件手动引入 @babel/polyfill ,如果不引入则会报错;
false:不管引入与否都不会处理 polyfill;

所以针对本文的问题,需要在入口文件 main.js 中查看是否引入了 @babel/polyfill 文件,如果引入了直接删掉就可以了 ;

前端代码 Jenkins 线上打包报错:TypeError: StackFrame is not a constructor相关推荐

  1. 【vue打包】线上部署报错net::ERR_ABORTED 404 (Not Found)

    文章目录 一.问题: 二.分析: 三.解决: 四.扩展: 一.问题: 线上部署报错net::ERR_ABORTED 404 (Not Found),但本地部署到nginx里面却没问题 二.分析: pu ...

  2. vue3 全局注册app.config.globalProperties, 如何处理getCurrentInstance 上下文线上环境报错

    vue3挂载全局属性和方法,使用app.config.globalProperties, 但是在组件中获取全局上下文的时候getCurrentInstance会在线上环境报错. 搜索了一遍,看了好多文 ...

  3. Jenkins 父pom打包报错[unknown-version]: Could not find artifact xxx

    Jenkins 父pom打包报错[unknown-version]: Could not find artifact xxx 经过排查 发现是因为子模块继承了父模块的父模块(大白话越级了),将该子模块 ...

  4. 记一次线上redis报错(JedisExhaustedPoolException: Could not get a resource since the pool is exhausted)

    错误详情 redis.clients.jedis.exceptions.JedisExhaustedPoolException: Could not get a resource since the ...

  5. 前端代码与后端联调:报错:Required String parameter ‘userID‘ is not present

    后端框架: SpringBoot 前端框架: React ajax 前端界面使用 ajax进行请求url链接 传递参数:username 数据类型 String 报错: Required String ...

  6. js[mqtt线上环境报错net.createConnection is not a function]

    报错版本: mqtt 4.2.x 版本 官方issues https://github.com/mqttjs/MQTT.js/issues/1140 报错内容: 解决方案: 降低版本,并且将 '^' ...

  7. happypack打包报错TypeError: this.getOptions is not a function

    网上很多TypeError: this.getOptions is not a function,需要从错误提示看: 上面红色框可以看出style-loader报错了,应该改style-loader, ...

  8. vite项目在jenkins自动打包报错:failed to load config from ../vite.config.js You installed esbuild on

    vite项目在jenkins自动打包报错找不到esbuild-linux-64 在window环境开发用的找不到esbuild-windows-64,在linux环境构建需要使用esbuild-lin ...

  9. ajax文件上传报400,js ajaxfileupload.js上传报错的解决方法

    相信大家在工作中经常用到文件上传的操作,因为我是搞前端的,所以这里主要是介绍ajax在前端中的操作.代码我省略的比较多,直接拿js那里的 $.ajaxFileUpload({ url:'www.cod ...

最新文章

  1. 利用js弹出select下拉选中option的内容
  2. DELPHI学习---结构类型
  3. 万万没想到,刷1000道题目,还不如搞懂这几个机械动图!
  4. ActiveMQ消费者平滑关闭
  5. WordPress主题 WebStack导航主题
  6. 给dubbo接口添加白名单——dubbo Filter的使用
  7. 著名NFT藏家WhaleShark的NBA Top Shot账户估值达1580万美元
  8. JavaScript异常处理
  9. 电脑桌面出现透明条图标“复制”“刷新”解决方法
  10. 学习WPF: 创建数据绑定目录树
  11. Redis 6.0 源码阅读笔记(6) -- Set 数据类型源码分析
  12. 关于equal和==
  13. 最新 2022中国大学排名发布~
  14. 04_turtle画奥运五环
  15. 微博Android平台SDK文档
  16. 行进中换轮胎——万字长文解析美团和大众点评两大数据平台是怎么融合的
  17. cnpm : 无法加载文件 C:\Users\Administrator\AppData\Roaming\npm\cnpm.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go
  18. ODI之知识模块(KM)
  19. @Value(“#{}“) 与 @Value(“${}“) 的区别
  20. 毕业设计-基于SSM框架大学教务管理平台项目开发实战教程(附源码)

热门文章

  1. RFC2616中文版
  2. 使用HBuilderX云打包App之视频相机权限配置
  3. 一文理解 JWT、JWS、JWE、JWA、JWK、JOSE
  4. Google AutoValue详解
  5. 计算机技术在现代地球科学中的重要性,浅谈GIS技术在地球科学中的应用.doc
  6. 关于simplis仿真和驱动方法
  7. ASIHTTPRequest 状态栏网络等待指示器
  8. 美国电气与计算机工程专业排名,美国电气与计算机工程专业排名怎么样?美国电气与计算机工程专业大学推荐...
  9. c语言巡线程序,小车巡线程序
  10. 记华为云服务器配置mysql-Navicat连接