VUE---项目打包

当项目做完,要 执行 npm run build 打包最终的结果(最终的结果会打包进dist文件夹)。

一、配置 

在vue.config.js中添加以下内容:

const { defineConfig } = require('@vue/cli-service')
module.exports = defineConfig({transpileDependencies: true,// 如果打包结果,希望以File协议(双击打开),需要加如下的配置:publicPath: '', // 这个值 写成 空字符串,或者 './' 都可以// 下面的配置,作用是取消生成 xxx.map 文件productionSourceMap: false
})

二、生成打包报告

package.json 中,build命令后, 加入 --report ,这样的话,打包之后就会生成一个 report.html 文件,这个文件就记录着打包的结果的详细信息。通过这个文件,我们可以知道打包后项目文件的详细信息,从而有针对性的对文件进行压缩或者改为CDN方式引用。

"scripts": {"serve": "vue-cli-service serve","build": "vue-cli-service build --report","lint": "vue-cli-service lint"
},

report.html的内容如下所示:

 

 从上图可知,dashboard文件最大,原因是该页面引用了echarts包,我们可将echarts的引入改为CDN引入。

三、优化打包的体积

在index.html中加载 CDN 链接,使用其他网站的 axios、echarts、element-ui 等等。并在vue.config.js中配置,在打包时排除第三方包。 

以echarts为例:

        1、在index.html文件中引入echarts.js文件
<!DOCTYPE html>
<html lang=""><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1.0"><link rel="icon" href="<%= BASE_URL %>favicon.ico"><title><%= htmlWebpackPlugin.options.title %></title></head><body><noscript><strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id="app"></div><!-- built files will be auto injected --><script src="https://cdn.jsdelivr.net/npm/echarts/dist/echarts.min.js"></script></body>
</html>
        2、在vue.config.js文件中, 添加configureWebpack配置,排除第三方包
const { defineConfig } = require('@vue/cli-service')
module.exports = defineConfig({transpileDependencies: true,// 如果打包结果,希望以File协议(双击打开),需要加如下的配置:publicPath: '', // 这个值 写错 空字符串,或者 './' 都可以// 下面的配置,作用是取消生成 xxx.map 文件productionSourceMap: false,// 配置排除哪些第三方包configureWebpack: {// 排除项externals: {// 键(第三方包名--package.json中的名字): 值(window对象中多了什么)echarts: 'echarts',}}
})
        3、配置后的report.html

 

四、找第三方包的网站 

 https://www.jsdelivr.com/

unpkg网站
 

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

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

相关文章

[BUUCTF 2018]Online Tool(特详解)

这段代码块检查请求中是否设置了HTTP_X_FORWARDED_FOR头部。如果设置了&#xff0c;它将REMOTE_ADDR设置为HTTP_X_FORWARDED_FOR的值。这通常用于处理Web服务器位于代理后面的情况。 如果URL中未设置host参数&#xff0c;它使用highlight_file(__FILE__);来显示PHP文件的源代码…

uni-app 开发

一、uni-app 简介 uni-app 是一个使用 Vue.js 开发所有前端应用的框架 。开发者编写一套代码&#xff0c;可发布到 iOS 、 Android 、 H5 、以及各种小程序&#xff08;微信 / 支付宝 / 百度 / 头条 /QQ/ 钉钉 / 淘宝&#xff09;、快应用等多个平台。 详细的 uni-app 官方…

屏蔽系统热键/关机/注入 Winlogon(中)

1 前言 在新的内容开始前&#xff0c;我想整理一些旧文&#xff0c;这一框题展示了在以前的系统上实现在用户关机/重启/注销时弹出对话框的功能。为什么需要先讲这个部分&#xff1f;因为这一部分需要拦截的函数是截至 Win 8 系统&#xff0c;微软所采用的关机/重启等途径上的…

ElasticSearch 8.x 使用 snapshot(快照)进行数据迁移

ElasticSearch 1、ElasticSearch学习随笔之基础介绍 2、ElasticSearch学习随笔之简单操作 3、ElasticSearch学习随笔之java api 操作 4、ElasticSearch学习随笔之SpringBoot Starter 操作 5、ElasticSearch学习随笔之嵌套操作 6、ElasticSearch学习随笔之分词算法 7、ElasticS…

情人节爆品出现!单周GMV暴涨6成,直冲20K美金,节庆用品赛道迎来“爆单潮”!

2024新年钟声已经敲响&#xff0c;一大波节日爆品正在疯狂涌现&#xff0c;而这只是一个开始。 开年首月电商流量一波接一波来袭&#xff0c;下一个“消费大节”已经在来的路上&#xff01;——情人节。 节日营销热点抢量&#xff0c;宜早不宜晚。商家们纷纷开始上新节庆相关…

git配置用户名和邮箱

1.git 1.配置用户名和邮箱 2.git初体验 git init 初始化git仓库 管理项目让git管理你的本次代码变更 git add .git commit -m “你完成的功能” 后续如果新增/修改/删除代码&#xff0c; 完成新功能时 重复2 3.查看日志 1.git log 4.版本回退 1.查看提交的版本记录 git l…

大数据信用报告多久查一次比较好?怎么查?

随着大数据技术的快速发展&#xff0c;大数据信用报告在个人信用评估中发挥着越来越重要的作用。然而&#xff0c;对于很多人来说&#xff0c;大数据信用报告仍然是一个相对陌生的概念。本文将就大数据信用报告的查询频率和查询方式进行探讨&#xff0c;以帮助大家更好地理解这…

ChatGPT4 比 ChatGPT3.5 强在了那里?

刚开始的时候我还在纠结&#xff0c;一个月20 刀的ChatGPT4 &#xff0c;到底值不值这个价钱&#xff1f;使用过后发现&#xff0c;诶嘛真香。因为 GPT4 比 GPT3.5 多了太多功能&#xff0c;特别是识图能力&#xff0c;用好的话效率翻倍。 1. 看图写代码 ChatGPT4 相比 ChatG…

idea docker 内网应用实践

文章目录 前言一、服务器端1.1 离线安装docker1.2 开启docker远程访问1.3 制作对应jdk镜像1.3.1 下载jdk171.3.2 Dockerfile 制作jdk17镜像1.3.3 镜像导出1.3.4 服务器引入镜像 二、Idea 配置2.1 Dockerfile2.2 pom 引入docker插件2.3 idea docker插件配置2.4 打包镜像上传2.5 …

k8s-快速部署一套k8s集群

1、前置知识点 1.1 生产环境可部署Kubernetes集群的两种方式 目前生产部署Kubernetes集群主要有两种方式&#xff1a; kubeadm Kubeadm是一个K8s部署工具&#xff0c;提供kubeadm init和kubeadm join&#xff0c;用于快速部署Kubernetes集群。 二进制包 从github下载发行…

基于springboot药房管理系统源码和论文

伴随着全球信息化发展&#xff0c;行行业业都与计算机技术相衔接&#xff0c;计算机技术普遍运用于药房管理行业。实施计算机系统来管理可以降低逍遥大药房管理成本&#xff0c;使整个逍遥大药房行业的发展有显著提升。 本论文主要面向逍遥大药房管理中出现的一些常见问题&…

Advanced Science |GWAS分析揭示广东桑关键农艺性状的遗传基础

桑树是养蚕和传统医药中重要的经济植物。然而&#xff0c;桑树的遗传和进化史在很大程度上仍然是未知的。 近期&#xff0c;发表在Advanced Science&#xff08;IF17.5&#xff09;上的文章“Genomic Resequencing Unravels the Genetic Basis of Domestication, Expansion, an…

盛最多水的容器[中等]

一、题目 给定一个长度为n的整数数组height。有n条垂线&#xff0c;第i条线的两个端点是(i, 0)和(i, height[i])。找出其中的两条线&#xff0c;使得它们与x轴共同构成的容器可以容纳最多的水。返回容器可以储存的最大水量。也就是求x轴与y轴的面积。 说明&#xff1a;你不能倾…

Vue2 VS Vue3 生命周期

一、生命周期的概念 Vue组件实例在创建时要经历一系列的初始化步骤&#xff0c;在此过程中Vue会在合适的时机&#xff0c;调用特定的函数&#xff0c;从而让开发者有机会在特定阶段运行自己的代码&#xff0c;这些特定的函数统称为&#xff1a;生命周期钩子&#xff08;也会叫…

【算法】BFS算法解决多源最短路问题(C++)

文章目录 前言那么什么是单源最短路 / 多源最短路呢&#xff1f;如何解决此类题&#xff1f;解法一解法二对于解法二&#xff0c;如何编写代码&#xff1f; 算法题542.01矩阵1020.飞地的数量1765.地图中的最高点1162.地图分析 前言 此前我们对 单源最短路 问题进行的讲解&…

2024年搭建幻兽帕鲁服务器价格多少?如何自建Palworld?

自建幻兽帕鲁服务器租用价格表&#xff0c;2024阿里云推出专属幻兽帕鲁Palworld游戏优惠服务器&#xff0c;配置分为4核16G和4核32G服务器&#xff0c;4核16G配置32.25元/1个月、3M带宽96.75元/1个月、8核32G配置10M带宽90.60元/1个月&#xff0c;8核32G配置3个月271.80元。ECS…

[ESP32 IDF] wifi 的应用

目录 背景知识 wifi的基本连接使用 WiFi篇—— WiFi两种模式文章中二、WiFi 的启动&#xff08;STA 及 AP 模式&#xff09; 输出现象 通过websocket控制LED 实践验证 实验现象 背景知识 WIFI是ESP32非常重要的一个功能&#xff0c;想要使用一下IDF的API实现将ESP32连…

Ubuntu中安装OpenSSL

Ubuntu中安装OpenSSL 参考&#xff1a;linux上安装Openssl步骤详解_linux安装openssl-CSDN博客 下载&#xff1a; https://www.openssl.org/source/openssl-3.0.1.tar.gz 解压&#xff1a; tar -xzvf xxxx.tar.gz 安装&#xff1a; cd openssl-3.0.12 ./config make -j3…

关于如何利用ChatGPT提高编程效率的

自从去年ChatGPT3.5推出以后&#xff0c;这一年时间在编程过程中我也在慢慢熟悉人工智能的使用&#xff0c;目前来看即使是免费的ChatGPT3.5对于编程效率的提升也是有很大帮助的&#xff0c;虽然在使用过程中确实出现了一些问题&#xff0c;本文记录下我的一些心得体会和用法。…

开发工具之GIT协同开发流程和微服务部署实践与总结

GIT协同开发流程和微服务部署的实践&#xff0c;并总结经验和教训。通过合理的GIT协同开发流程和良好的微服务部署策略&#xff0c;团队可以更高效地开发和部署软件。 ## 引言 在当今快节奏的软件开发环境中&#xff0c;采用合适的工具和流程对于实现高效协同开发和可靠部署至…