打造飞一样的前端: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打包后的各种错误问题,还得好好研究。随着前端框架的复杂度增加,打包是一个很重要,很严肃的问题。

相关内容

热门资讯

安卓系统8.1.0刷机,体验流... 你有没有想过,你的安卓手机系统是不是已经过时了呢?别急,别急,今天就来给你详细聊聊安卓系统8.1.0...
上汽大众换安卓系统,开启智能出... 你有没有听说最近上汽大众的大动作?没错,他们竟然把车机系统换成了安卓系统!这可真是让人眼前一亮,让我...
如何拆分安卓系统数据,安卓系统... 你有没有想过,你的安卓手机里那些密密麻麻的数据,其实是可以被拆分的呢?没错,就是那些照片、视频、应用...
5.1安卓系统刷机,解锁新功能 你有没有想过,你的安卓手机其实就像一个等待被重新雕琢的艺术品?没错,今天就要来聊聊这个神秘又充满乐趣...
安卓系统设置替代软件,个性化设... 你有没有发现,安卓手机的设置界面有时候真的有点复杂,让人眼花缭乱?别急,今天就来给你揭秘一些替代软件...
安卓系统蓝牙在哪打开,安卓系统... 你有没有发现,有时候手机里的功能就像藏宝图一样,让人找得头都疼?今天,我就来帮你解开这个谜团,告诉你...
安卓linux系统软件,功能与... 你知道吗?在智能手机的世界里,有一个系统可是独树一帜,那就是安卓Linux系统。它就像一位多才多艺的...
安卓ios双系统接单,拓展业务... 你知道吗?现在这个时代,手机双系统已经成为了很多人的选择。安卓和iOS,这两个操作系统就像是一对双胞...
安卓系统和linux系统的区别... 你有没有想过,为什么你的手机里装的是安卓系统而不是Linux系统呢?这两者虽然听起来都挺高大上的,但...
小米4安卓系统几代,引领科技潮... 你有没有想过,你的手机里那个小小的操作系统,其实就像是一个默默无闻的超级英雄呢?今天,咱们就来聊聊小...
安卓系统里的SE,功能与操作指... 你有没有发现,安卓系统里有个叫SE的小家伙?别小看了它,这个小家伙可是隐藏着不少秘密呢!今天,就让我...
手机系统flyme是安卓系统吗... 你有没有想过,你的手机里那个飞快如风的系统,Flyme,它是不是安卓的“好兄弟”呢?今天,就让我带你...
安卓os系统怎么使用,Andr... 你手里那台安卓手机是不是总感觉有点儿复杂,不知道怎么玩转呢?别急,今天就来给你详细介绍一下安卓OS系...
安卓怎么装旧系统,安卓设备如何... 你有没有想过,手机用久了,系统更新换代,新功能层出不穷,但有时候,那些旧系统里的经典操作和熟悉感,简...
电脑怎装安卓系统,轻松实现多系... 你有没有想过,你的电脑除了装Windows系统,还能装上安卓系统呢?没错,就是那个让你手机不离手的安...
安卓系统找不到软件,探寻解决方... 最近是不是你也遇到了这样的烦恼:手机里明明有安卓系统,却怎么也找不到心仪的软件?别急,今天就来给你详...
小米独立系统取代安卓,迈向自主... 小米独立系统:小米与安卓的较量在科技领域,每一次系统的更新换代都牵动着无数科技爱好者和行业从业者的目...
安卓系统会员价格,性价比与权益... 你有没有发现,最近手机上的安卓系统会员价格又涨了?这可真是让人有点头疼呢!咱们一起来聊聊这个话题,看...
安卓点歌系统怎么点歌,享受音乐... 你有没有想过,在安卓手机上点歌竟然也能这么有趣呢?没错,现在就让我带你一起探索安卓点歌系统的奥秘吧!...
w222安卓系统,功能解析与使... 你有没有发现,最近你的手机是不是变得越来越流畅了?没错,我要说的就是那款备受瞩目的W222安卓系统!...