打造飞一样的前端:vue3应用打包优化
创始人
2024-04-28 15:59:25
0

目录

    • 前言
    • 优化vue3构建的几点措施
      • 采用CDN
      • 压缩JS
      • 按需加载
        • 按需加载vxe-table
        • 按需加载element-plus
    • 总结

前言

vue3应用上线后,一直受困于加载过慢,昨天终于坐下来做些优化。本想切换到webpack打包,但还是坚持了vite。

优化vue3构建的几点措施

采用CDN

build中配置vue和element-plus为外部依赖:

rollupOptions: {external: ["vue", "element-plus", "vue-demi"],plugins: [dynamicImportVars(),externalGlobals({vue: "Vue","element-plus": "ElementPlus",// 👇 配置 vue-demi 全局变量 👇"vue-demi": "VueDemi",})],},

然后,插件配置里导入相应的CDN:


import { autoComplete, Plugin as importToCDN } from "vite-plugin-cdn-import";
importToCDN({modules: [autoComplete("vue"),autoComplete("axios"),{name: "vue-demi",var: "VueDmi", //根据main.js中定义的来path: "https://npm.elemecdn.com/vue-demi@0.13.11"},{name: "element-plus",var: "ElementPlus", //根据main.js中定义的来path: "https://npm.elemecdn.com/element-plus@2.2.27/dist/index.full.js",css: "dist/index.css"},{name: "@element-plus/icons-vue",var: "ElementPlusIconsVue", //根据main.js中定义的来path: 'https://npm.elemecdn.com/@element-plus/icons-vue@2.0.10/dist/index.iife.min.js'}]}),

这样,构建后,就会自动更新index.html为:







压缩JS

viteCompression({verbose: true,disable: false,threshold: 10240,algorithm: 'gzip',ext: '.gz',}),

需要配合nginx里的gzip配置。

按需加载

按需加载vxe-table

styleImport({libs: [{libraryName: "vxe-table",esModule: true,ensureStyleFile: true,resolveComponent: name => `vxe-table/es/${name}`,resolveStyle: name => `vxe-table/es/${name}/style.css`}]}),

按需加载element-plus

先安装相应插件:

npm install -D unplugin-vue-components unplugin-auto-import

然后配置:

// webpack.config.js
const AutoImport = require('unplugin-auto-import/webpack')
const Components = require('unplugin-vue-components/webpack')
const { ElementPlusResolver } = require('unplugin-vue-components/resolvers')module.exports = {// ...plugins: [AutoImport({resolvers: [ElementPlusResolver()],}),Components({resolvers: [ElementPlusResolver()],}),],
}

总结

基本就是上述几招了,但实际过程遇到vxe-table打包后的各种错误问题,还得好好研究。随着前端框架的复杂度增加,打包是一个很重要,很严肃的问题。

相关内容

热门资讯

安卓系统智能电视刷机,焕新体验 亲爱的电视迷们,你是否曾为你的安卓智能电视的性能所困扰?是不是觉得它运行缓慢,功能受限?别担心,今天...
安卓系统无法安装applica... 最近是不是遇到了安卓系统无法安装application的烦恼?别急,让我来帮你一探究竟,解决这个让人...
怎么取消安卓系统锁屏,解锁锁屏... 手机锁屏功能虽然能保护我们的隐私,但有时候也会让人头疼,比如忘记密码或者想快速查看信息时。那么,怎么...
安卓系统高德怎么下载,轻松获取... 你有没有发现,现在手机上导航软件真是越来越方便了?尤其是安卓系统的用户,高德地图这款神器简直成了出行...
安卓系统的开源部分,开源代码背... 你知道吗?安卓系统,这个在我们手机上无处不在的小家伙,竟然有一部分是开源的!是不是觉得有点神奇?别急...
小米下载安卓13系统,畅享智能... 亲爱的手机控们,你是否已经迫不及待想要体验最新的操作系统呢?没错,我说的就是安卓13系统!而今天,我...
安卓系统如何设置拍月亮,捕捉夜... 月亮,那轮皎洁的夜空明珠,总是让人心生向往。你是否也想用你的安卓手机捕捉到它的美丽瞬间呢?别急,今天...
安卓v8以上系统,探索安卓V8... 你知道吗?最近手机界可是掀起了一股新潮流,那就是安卓V8以上系统。这可不是什么小打小闹,而是实实在在...
安卓系统兼容哪个版本好,哪个版... 你有没有想过,你的安卓手机到底兼容哪个版本的系统最好呢?这可是个技术活儿,得好好研究研究。别急,今天...
安卓平板安装linux桌面系统... 你有没有想过给你的安卓平板来个变身大法?没错,就是给它安装一个Linux桌面系统!想象原本只能刷刷剧...
安卓什么手机系统bug最少,揭... 你有没有发现,用安卓手机的时候,有时候会遇到一些小麻烦,比如系统突然卡顿,或者某个应用突然崩溃,真是...
手机软件安卓下载系统,解锁手机... 你有没有发现,现在的生活越来越离不开手机了?手机里装满了各种各样的软件,让我们的生活变得更加便捷。今...
微软系统和安卓系统的cad软件... 你有没有想过,为什么你的电脑里装的是微软系统,而朋友的手机上却是安卓系统?这背后其实隐藏着一场关于操...
安卓系统怎么防止广告,全方位防... 你是不是也被安卓手机上的广告烦得头疼不已?别急,今天就来给你支几招,让你的手机广告消失得无影无踪!一...
安卓系统支持蓝牙gps,精准定... 你知道吗?现在智能手机的世界里,安卓系统可是当之无愧的霸主呢!而说起安卓系统的强大功能,蓝牙和GPS...
安卓11系统充电口异常,安卓1... 最近你的安卓手机是不是也遇到了充电口的小麻烦?别急,让我来给你详细说说安卓11系统充电口异常的那些事...
苹果转换到安卓系统6,系统6的... 你有没有想过,从苹果的iOS系统转换到安卓系统,这中间的滋味儿是不是有点像换了个口味?没错,今天咱们...
安卓系统表情包制作软件,安卓表... 你是不是也和我一样,喜欢在聊天的时候用表情包来增加趣味性呢?安卓手机上的表情包制作软件可是让这个乐趣...
安卓系统怎么冲公交卡,公交卡充... 你有没有想过,在繁忙的都市生活中,拥有一张便捷的公交卡是多么美妙的事情呢?想象你只需轻轻一刷,就能轻...
安卓最高系统图片格式,从基础到... 你有没有发现,手机里的安卓系统更新换代的速度简直就像小兔子一样跳跃呢!每次更新,都给我们带来了新的惊...