位置: IT常识 - 正文

vite 本地运行首次进入页面加载慢问题(本地运行库是什么)

编辑:rootadmin
vite 本地运行首次进入页面加载慢问题 思考

推荐整理分享vite 本地运行首次进入页面加载慢问题(本地运行库是什么),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:本地运行库是什么,本地运行库是什么,运行本地策略,vite本地代理配置,本地运行库是什么,运行本地用户和组,本地运行什么意思,本地运行什么意思,内容如对您有帮助,希望把文章链接给更多的朋友!

vite的适用场景是什么? 由于我使用了tailwindcss插件 使用webpack 每次启动所有的项目的css样式都预先使用tailwindcss 转换成css 性能普通的电脑启动项目需要1分钟到2分钟。不过首次加载不会有什么多大的延迟,按需导入的页面加载也不会有多大的延迟,但webpack下运行的tailwindcss有个问题就是修改样式后动态编译运行后 查看样式很卡 长时间修改样式 很吃内存 运行久了就会挤爆内存。 现在vue3很流行使用vite打包,所以我也尝试使用vite。webpack 切换到vite,如果单看命令行中的运行,运行完毕不到一秒,不过首次打开页面则需要等10秒到20秒左右的处理时间 请求数量达到了132个(浏览器对于这种并发请求会产生阻塞的),这里的文件最大了也是tailwindcss,并且打开按需加载的页面路由时,还需要经过tailwindcss编译css,打开未打开过的页面还需等几秒时间,这个体验非常差。

vite 本地运行首次进入页面加载慢问题(本地运行库是什么)

vite 预打包

由于vite需要动态解析依赖,然后再打包。原理 参考vite 依赖预构建。所以首次打开页面 解析 打包会很慢,因为vite 默认依赖构建 达不到预期 官方提供了依赖优化选项 让开发者实现添加依赖项 optimizeDeps.exclude或者排除依赖项 optimizeDeps.include 这里我们使用 optimizeDeps.include添加依赖项。

添加依赖项

通常一些常见的依赖项如vue axios vue-router我们都可以知道可以添加到依赖项。但是一些样式 js文件的依赖项我们无法准确的得知。这里使用第三方插件vite-plugin-optimize-persist 来实现获取依赖项 参考 文章 vite首次打开界面加载慢问题/解决 安装 插件

npm i -D vite-plugin-optimize-persist vite-plugin-package-config

vite.config.ts添加配置 其中 include里面就是需要添加的依赖项

// 自动生成 预打包import OptimizationPersist from "vite-plugin-optimize-persist";import PkgConfig from "vite-plugin-package-config";export default ({ mode }) => { plugins: [ vue(), //自动生成 预打包 PkgConfig(), OptimizationPersist(), AutoImport({ resolvers: [ElementPlusResolver()], }), Components({ resolvers: [ElementPlusResolver()], }), ], optimizeDeps: { include: [ "element-plus/es", "element-plus/es/components/config-provider/style/css", "element-plus/es/components/container/style/css", "element-plus/es/components/main/style/css", "element-plus/es/components/header/style/css", "element-plus/es/components/date-picker/style/css", "element-plus/es/components/drawer/style/css", "element-plus/es/components/image/style/css", "element-plus/es/components/image/style/css", "element-plus/es/components/table/style/css", "element-plus/es/components/table-column/style/css", "element-plus/es/components/input/style/css", "element-plus/es/components/dropdown/style/css", "element-plus/es/components/popover/style/css", "element-plus/es/components/dropdown-item/style/css", "element-plus/es/components/dropdown-menu/style/css", "element-plus/es/components/pagination/style/css", "element-plus/es/components/scrollbar/style/css", "element-plus/es/components/dialog/style/css", "element-plus/es/components/loading/style/css", "element-plus/es/components/tabs/style/css", "element-plus/es/components/tab-pane/style/css", "element-plus/es/components/select/style/css", "element-plus/es/components/option/style/css", "vue", "pinia", "jquery", "sass", "vue-router", // "tailwindcss", "tailwindcss/plugin", ], },}

原本插件应该是在 package.json 中自动生成 类似于 “vite”: { “optimizeDeps”: { “include”: [ // managed by vite-plugin-optimize-persist “@material-ui/core/Accordion”, “@material-ui/core/AccordionSummary”, “@material-ui/core/Dialog”, “@material-ui/core/DialogActions”, “@material-ui/icons/Dehaze”, “date-fns/format”, “lodash/debounce”, “lodash/map” ] } } 的依赖项的 。但是我打开页面发现package.json未自动生成依赖项。 所以我手动在vite.config.ts 添加依赖项 首次打开页面时,当’‘include’'中的数组不包含该依赖项时 命令行会提示出来 添加进去即可。 // 依赖项命令行提示 添加依赖项后 命令行运行完毕慢几百毫秒 但是按需加载页面的加载速度可以得到提升

本文链接地址:https://www.jiuchutong.com/zhishi/285109.html 转载请保留说明!

上一篇:fgadmin.exe是什么进程 有什么作用 fgadmin进程查询(gnaupdaemon.exe是什么)

下一篇:橡皮树怎么养(橡皮树怎么养护)

  • 2023年小规模物业公司物业费税率
  • 固定资产计提减值后可以转回吗
  • 人工费用分配表分配率
  • 工程施工和工程结算对冲有差额的会计分录
  • 印花税票吧
  • 房地产土地使用权是无形资产吗
  • 成本占收入比重分析
  • 坏账损失的核算方法一般有两种
  • 固定资产后续支出资本化和费用化
  • 化验室购买仪器计入什么科目
  • 出口免税收入会退税吗
  • 接受捐赠的固定资产进项税额可以抵扣吗
  • 预付绩效工资是什么意思
  • 食堂开支计入什么科目
  • 专用发票红冲后可以退税吗?
  • 个人所得税申报方式选哪个
  • 贷款已支付属于什么会计科目
  • 独生子女费属于什么费用
  • 财政部的监管职责范围不包括
  • 简易征收发票认证了之后怎么处理
  • 多付几分钱怎么做账
  • 财务刻章属于什么行业
  • 6%技术服务费是普票还是专票
  • 劳务公司费用成本怎么算
  • 普通支票如何转账
  • 合同印花税的5个税目
  • 加计抵减政策销售额占比怎么算
  • 实收资本是认缴出资吗
  • 网络平台的收入怎么算
  • 无法使用内置管理员账户打开micr
  • win10网页打不开但是有网
  • 如何让电脑安全
  • php字符串定义
  • 银行的贷款怎么发放
  • 常用的php操作mysql的函数有哪些
  • 管理费用怎么记凭证
  • 先开票还是先付款最新规定
  • 前端 上传文件
  • laravel url重写
  • service的启动方式及生命周期
  • 2、传统的目标设定过程目的重在________
  • html/css/javascript标准教程
  • python 二值化
  • 发票边缘有孔的可以撕掉吗
  • 收入的利息怎么记账
  • 政府补助的核算内容有哪些
  • 个人所得缴税租金怎么算
  • 公款私存个人检讨
  • 金融资产经营资产
  • 固定资产后续支出
  • 持有至到期投资减值准备
  • 公司货物发票进项高开还是低开
  • 专项应付款的账务处理营业外收入
  • 筹建期的财务费怎么算
  • 员工垫付的钱会计分录
  • 清算后剩余财产股东拒收怎么办
  • 不属于投资性房地产项目有自用房地产作为存货的
  • sql server服务包括有
  • 国产系统叫啥
  • wlanplus是什么软件
  • windows 注册表命令
  • win8 start menu
  • centos8查看cpu温度
  • 在mac中运行exe
  • centos6启动服务的命令
  • win8如何更改默认存储位置
  • win10预览版和正式版区别
  • 修改windows server2012服务器密码
  • perl运行环境
  • shell脚本命令行参数
  • 到了这个年纪吉他谱完整版
  • 深入理解javascript特性.pdf
  • js实现多继承
  • jq设置下拉框的值
  • jquerydom操作
  • 城市配套费需要交税吗
  • 税控盘开的电子票怎么发送给人
  • 山东居民养老金是多少
  • 福建省顺昌县人口有多少
  • 税务局的局长是什么级别
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设