Vue3高级性能优化

下载相关插件

声明:本文为个人学习文章:来源:小满zs

npm install rollup-plugin-visualizer

减小打包体积

执行npm run build后会自动打开该网址

在这里插入图片描述

vite.config.ts配置

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import AutoImport from 'unplugin-auto-import/vite'
import {visualizer} from "rollup-plugin-visualizer";
//vite版本
// https://vitejs.dev/config/
export default ({mode}:any) => {
  return defineConfig({
    plugins: [vue(),AutoImport({
      imports:['vue'],//vue注入
      dts:'src/auto-import.d.ts'//生成声明文件
    }),visualizer({open:true})],//必须配置open
    build:{
      chunkSizeWarningLimit:2000,//超过2000提示
      cssCodeSplit:true,//css拆分
      sourcemap:false, //不生成sourcemap
      minify:'terser',//是否禁用最小化混淆,esbuild打包最快,terser打包体积最小
      assetsInlineLimit:5000//小于该值,图片将打包成base64
    }
  })
}

其他性能优化相关

插件下载(离线缓存)

PWA离线存储技术

npm install vite-plugin-pwa
VitePWA({
      workbox:{
          cacheId:"Jth",//缓存名称
          runtimeCaching:[
            {
              urlPattern:/.*\.js.*/, //缓存文件
              handler:"StaleWhileRevalidate", //重新验证时失效
              options:{
                cacheName:"Jth-js", //缓存js,名称
                expiration:{
                  maxEntries:30, //缓存文件数量 LRU算法
                  maxAgeSeconds:30 * 24 * 60 * 60 //缓存有效期

                }
              }
            }
          ]
      },
    })

PWA技术让web网页无限接近于Native应用

  • 1.可以添加到主屏幕,利用manifest
  • 2.可以实现离线缓存,利用service worker实现
  • 3.可以发送通知,利用service worker 实现

可以自己去专门学习

图片懒加载

npm install vue3-lazy
import lazyPlugin from 'vue3-lazy'

<img v-lazy="user.avatar" >

虚拟化表格

当后端传入超过一千条数据后,前端展示压力很大,可以使用虚拟表格进行展示,在element-plus中有封装好的列表
在这里插入图片描述

多线程 使用 new Worker 创建

  • worker脚本与主进程的脚本必须遵守同源限制。他们所在的路径协议、域名、端口号三者需要相同
const myWorker1 = new Worker("./calcBox.js");

都使用postMessage发送消息

worker.postMessage(arrayBuffer, [arrayBuffer]);

都使用onmessage接收消息

self.onmessage = function (e) {
 // xxx这里是worker脚本的内容
};

关闭

worker.terminate();    

在这里插入图片描述
VUE use 已经集成

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值