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

相关内容

热门资讯

安卓系统比ios容量,iOS系... 你有没有想过,为什么你的安卓手机总是比iOS手机看起来能装下更多的东西呢?这背后其实有着不少门道呢!...
安卓系统如何有两个系统,安卓设... 你有没有想过,你的安卓手机里竟然可以藏着一个秘密世界?没错,就是可以同时拥有两个系统!这听起来是不是...
安卓系统崩溃进不去,深度解析故... 手机突然间罢工了,屏幕上黑漆漆的,安卓系统崩溃了,你心里是不是慌得一批?别急,今天就来给你详细说说安...
苹果系统游戏怎么变安卓,轻松实... 你有没有想过,那些在苹果系统上玩得如痴如醉的游戏,怎么就能在安卓系统上继续畅玩呢?是不是觉得这中间隔...
xp系统读取安卓手机,数据同步... 你有没有想过,你的XP系统竟然能读取安卓手机的数据呢?这听起来是不是有点神奇?别急,今天就来带你一探...
安卓系统用的流量,揭秘手机流量... 你有没有发现,手机里的安卓系统用流量那叫一个“疯狂”?有时候,明明没做什么大动作,流量就“嗖”的一下...
入门安卓机32位系统,轻松驾驭... 你有没有想过,拥有一台入门级的安卓手机,却因为32位系统而头疼不已?别急,今天就来给你详细解析一下这...
安卓系统怎么下对峙2,操作指南... 你有没有想过,在安卓系统上下载一款叫做“对峙2”的游戏会是怎样的体验呢?这款游戏在众多玩家中可是小有...
安卓车机好用系统推荐,打造智能... 你有没有发现,现在开车的时候,车机系统的重要性简直堪比导航仪呢!想象一边听着动感的音乐,一边看着实时...
安卓双系统内存卡,安卓双系统内... 你有没有想过,为什么你的安卓手机有时候会卡得像蜗牛一样?其实,这跟你的内存卡有着千丝万缕的关系呢!今...
安卓系统怎么取消双卡,安卓系统... 手机里的双卡功能,有时候真是让人又爱又恨。有时候,你可能会觉得两个卡槽太占地方,或者一个卡槽的流量用...
安卓系统被篡改怎么修复,快速修... 手机突然变得不听使唤了?安卓系统被篡改,是不是让你心头一紧?别慌,今天就来手把手教你如何修复安卓系统...
倩女幽魂ios系统和安卓系统,... 你有没有玩过倩女幽魂这款游戏呢?它可是近年来非常火爆的一款手游,无论是倩女幽魂ios系统还是安卓系统...
现在安卓手机什么系统,揭秘最新... 你有没有发现,现在走在街上,几乎每个人手里都拿着一部安卓手机?那么,问题来了,现在安卓手机都运行着什...
安卓系统能校准坐标吗,坐标定位... 你有没有想过,你的安卓手机里的地图导航是不是有时候会“迷路”?别急,今天就来聊聊这个话题:安卓系统能...
王者荣耀安卓系统进不去,王者荣... 最近是不是有不少王者荣耀的安卓玩家遇到了一个让人头疼的问题——进不去游戏?别急,今天就来给你详细解析...
c11系统是安卓系统吗,揭秘其... 你有没有听说过C11系统?是不是好奇它是不是安卓系统的一员呢?今天,就让我带你一探究竟,揭开这个神秘...
安卓系统上有没有safari,... 你有没有想过,在安卓系统上,我们能不能也像在苹果手机上那样,使用Safari浏览器呢?这可是个让人好...
小米是安卓系统的吗,引领智能生... 亲爱的读者,你是否曾好奇过,那些在我们生活中无处不在的小米手机,它们到底是不是安卓系统的呢?今天,就...
Windows11安卓子系统 亲爱的读者们,你是否也像我一样,对Windows 11的新功能充满了好奇和期待?今天,我要和你聊聊一...