webpackd打包两次-生成两份代码-出现legacy的js文件

当我们build后dist文件中出现legacy的js文件。

原因:
pack.json文件;

{
*****"browserslist": ["> 0.03%","not dead"]
}
  • 当我们项目运行在古老的浏览器上面时(表示支持市场份额超过 > 0.03% 的浏览器版本),甚至在初始的webpack下都不满足旧版浏览器的兼容,webpack5为我们提供了browserslist配置来轻松构建较为健全的兼容Polyfills的转化。自动二次打包出兼容的文件代码。关于以上配置可查看往期文章 vue-cli5.0.x优雅降级,配置项目兼容旧版浏览器
  • 所以有了以上配置。但是更随而来的代价便是有了二次构建打包出兼容性更好的egacy的js文件其实最直观的感受就是打包的速度变慢了
  • 同时这也是vue-cli现代模式正常生产build下的产物vue-cli现代模式,可以通过改变构建命令来规避(跳过)这个为兼容而二次打包的过程。(不是最佳解决方案

在这里插入图片描述

在这里插入图片描述


解决方案

一 、反正就是为了兼容的不要把browserslist配置的太离谱即可

"dependencies" : {},
"devDependencies": {},
"browserslist": ["> 1%","last 2 versions","not dead","not ie 11"
]

二、手动规避:不需要 type=“module”
2.1 可以yarn build --no-module
yarn build --no-module说明打包之后,不生成<script type="module">

npx vue-cli-service help build可以查看 build 后面可添加的指令

Usage: vue-cli-service build [options] [entry|pattern]Options:--mode         specify env mode (default: production)--dest         specify output directory (default: dist)--no-module    build app without generating <script type="module"> chunks for modern browsers--target       app | lib | wc | wc-async (default: app)--inline-vue   include the Vue module in the final bundle of library or web component target--formats      list of output formats for library builds (default: commonjs,umd,umd-min)--name         name for lib or web-component mode (default: "name" in package.json or entry filename)--filename     file name for output, only usable for 'lib' target (default: value of --name)--no-clean     do not remove the dist directory contents before building the project  --report       generate report.html to help analyze bundle content--report-json  generate report.json to help analyze bundle content--skip-plugins comma-separated list of plugin names to skip for this run--watch        watch for changes--stdin        close when stdin ends
使用:vue-cli-service build [options] [entry|pattern]选项:——mode指定env模式(默认为production)
——dest指定输出目录(默认:dist)
——no-module不生成&lt;script type="module"&gt;现代浏览器的块
——target app | lib | wc | wc-async(默认:app)
——inline-vue将Vue模块包含在库或web组件目标的最终包中
——格式化库构建的输出格式列表(默认:commonjs,umd,umd-min)
——name lib或web组件模式的名称(默认:package. name)。Json或条目文件名)
——filename用于输出的文件名,仅用于'lib'目标(默认:——name的值)
——no-clean在构建项目之前不要删除dist目录的内容
生成report.html来帮助分析包的内容
——report-json生成报告Json来帮助分析包的内容
——skip-plugins用逗号分隔的要跳过的插件名称列表
——注意观察变化
——stdin结束时关闭

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/650676.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

力扣--N皇后

题目: 按照国际象棋的规则&#xff0c;皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。 n 皇后问题 研究的是如何将 n 个皇后放置在 nn 的棋盘上&#xff0c;并且使皇后彼此之间不能相互攻击。 给你一个整数 n &#xff0c;返回所有不同的 n 皇后问题 的解决方案。…

【LLMOps】小白详细教程,在Dify中创建并使用自定义工具

文章目录 博客详细讲解视频点击查看高清脑图 1. 搭建天气查询http服务1.1. flask代码1.2. 接口优化方法 2. 生成openapi json schema2.1. 测试接口2.2. 生成openapi schema 3. 在dify中创建自定义工具3.1. 导入schema3.2. 设置工具认证信息3.3. 测试工具 4. 调用工具4.1. Agent…

C++实战演练---负载均衡在线oj项目预热

顾得泉&#xff1a;个人主页 个人专栏&#xff1a;《Linux操作系统》 《C从入门到精通》 《LeedCode刷题》 键盘敲烂&#xff0c;年薪百万&#xff01; 前言 学习准备了快一年时间&#xff0c;心心念念的实战演练终于可以开始了&#xff0c;话不多说&#xff0c;直接进入主题…

使用streamlit构建网站

1.目的 最近团队有一个人脸识别的项目&#xff0c;想做一个网站界面来演示&#xff0c;同时使用了花生壳进行内网穿透&#xff0c;使得可以在其他设备访问该界面。 2.算法部分 import os os.environ[TF_CPP_MIN_LOG_LEVEL] 2 import matplotlib as mpl mpl.use(TkAgg) impo…

AI大模型探索之路-训练篇4:大语言模型训练数据集概览

文章目录 前言一、常用的预训练数据集1、网页2、书籍3、维基百科4、代码5、混合型数据集 二、常用微调数据集1、指令微调数据集1.1 自然语言处理任务数据集1.2 日常对话数据集1.3 合成数据集 2、人类对齐数据集 前言 在人工智能领域&#xff0c;构建强大的AI系统的关键步骤之一…

RTU遥测终端为城市排水安全保驾护航!

近年来&#xff0c;全球气候变迁与城市化进程不断加速&#xff0c;导致强降雨事件频发&#xff0c;道路低洼地带、下穿式立交桥和隧道等区域在暴雨中常易积水&#xff0c;严重阻碍了人民的出行&#xff0c;甚至危及生命与财产安全。而传统的排水管网管理方式已难以适应现代城市…

干货 :医疗企业渠道管理实战手册:策略、平台建设、CRM解决方案

最近与同行交流&#xff0c;对方调侃道&#xff1a;人形机器人和老头乐&#xff0c;应该也算医疗器械&#xff0c;是服务老人居家和出行的产品。确实&#xff0c;未来中国老龄化加重&#xff0c;医疗器械行业&#xff0c;也会注入新的增长动力。 长期以来&#xff0c;医疗器械…

用Vue做一个待办事项

这个待办事项有以下功能&#xff1a;增删查&#xff0c;既新增待办事项&#xff0c;删除待办事项&#xff0c;查看全部&#xff0c;未完成&#xff0c;完成待办事项&#xff0c;当鼠标移动到待办事项上时会显示删除按钮 分为四个部分来实现&#xff1a;ToDoHeader.vue、ToDoMai…

yudao-cloud微服务系统系统模块+后台管理系统成功运行

&#x1f339;作者主页&#xff1a;青花锁 &#x1f339;简介&#xff1a;Java领域优质创作者&#x1f3c6;、Java微服务架构公号作者&#x1f604; &#x1f339;简历模板、学习资料、面试题库、技术互助 &#x1f339;文末获取联系方式 &#x1f4dd; 系列文章目录 第一章 芋…

Covalent Network(CQT)近三个月代币回购超 10 万美元

Covalent Network&#xff08;CQT&#xff09;报告了其代币回购计划的显著增长&#xff0c;自 2024 年 1 月底启动以来&#xff0c;已从公开市场回购了价值超过10万美元的 CQT 代币。该机制通过 Covalent Network&#xff08;CQT&#xff09;的 API 收入来回购 CQT 代币&#x…

大数据计算引擎中的Calcite

1.Calcite介绍 Calcite是一个动态数据库管理框架&#xff0c;具备数据库管理系统的功能 Calcite具备SQL解析、校验、优化、生成、连接查询等功能 Calcite能够为不同平台和数据源提供统一的查询引擎 2.Calcite能力 比如&#xff0c;对于HBase而言&#xff0c;没有SQL查询的能力…

【java】hashCode 方法

HashSet HashSet 是一个集合&#xff0c;该集合的作用是去重。 import java.util.HashSet; public class Test {public static void main(String[] args) {HashSet hashSet new HashSet();People people1 new People();People people2 new People();hashSet.add("hel…