前端性能优化二十九:花裤衩模板多入口文件打包

2023-12-26 11:04

本文主要是介绍前端性能优化二十九:花裤衩模板多入口文件打包,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

(1). 场景:

. 大型类cms型:a. 技术选型是vueb. 有诸多子功能模块,全部打包在一起很大.

(2). 打包策略原则:

. 选择合适的打包粒度,生成的单文件大小不要超过500KB.. 充分利用浏览器的并发请求:a. https考虑同时保证并发数不超过6.b. http2可以忽略.. 尽可能让浏览器命中304,频繁改动的业务代码不要与公共代码打包.. 避免加载太多用不到的代码,层级较深的页面进行异步加载.

(3). 打包策略规则:

. 第三方库如vue、jquery、bootstrap打包为一个文件.. 公共组件如弹窗、菜单等打包为一个文件.. 工具类、项目通用基类打包为一个文件.. 各个功能模块打包出自己的入口文件.. 各功能模块作用一个SPA,子页面进行异步加载.

2. 实战:

(1). 各入口文件的打包:

. 项目整体作为一个SPA,各子功能都有自己单独的入口文件.. 目录结构如下:srcappspaper    // 子功能index.jsquestionindex.jscomponents  // 公共组件

(2). 优雅的加载子功能模块入口思路:

. 功能模块是随时会增加的,在entry中写死入口文件不太友好.. 使用glob的模块,能够用通配符来取到所有的文件.(类似gulp),动态获取子功能入口文件.

(3). 动态查找所有入口文件:

var files = glob.sync('./public/src/apps/*/index.js');
var newEntries = {};
files.forEach(function(f){// 得到apps/question/index这样的文件名var name = /.*\/(apps\/.*?\/index)\.js/.exec(f)[1];newEntries[name] = f;
});
config.entry = Object.assign({}, config.entry, newEntries);

这篇关于前端性能优化二十九:花裤衩模板多入口文件打包的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/539173

相关文章

小白也能轻松上手! 路由器设置优化指南

《小白也能轻松上手!路由器设置优化指南》在日常生活中,我们常常会遇到WiFi网速慢的问题,这主要受到三个方面的影响,首要原因是WiFi产品的配置优化不合理,其次是硬件性能的不足,以及宽带线路本身的质... 在数字化时代,网络已成为生活必需品,追剧、游戏、办公、学习都离不开稳定高速的网络。但很多人面对新路由器

从入门到精通详解LangChain加载HTML内容的全攻略

《从入门到精通详解LangChain加载HTML内容的全攻略》这篇文章主要为大家详细介绍了如何用LangChain优雅地处理HTML内容,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录引言:当大语言模型遇见html一、HTML加载器为什么需要专门的HTML加载器核心加载器对比表二

SpringBoot集成EasyPoi实现Excel模板导出成PDF文件

《SpringBoot集成EasyPoi实现Excel模板导出成PDF文件》在日常工作中,我们经常需要将数据导出成Excel表格或PDF文件,本文将介绍如何在SpringBoot项目中集成EasyPo... 目录前言摘要简介源代码解析应用场景案例优缺点分析类代码方法介绍测试用例小结前言在日常工作中,我们经

Zabbix在MySQL性能监控方面的运用及最佳实践记录

《Zabbix在MySQL性能监控方面的运用及最佳实践记录》Zabbix通过自定义脚本和内置模板监控MySQL核心指标(连接、查询、资源、复制),支持自动发现多实例及告警通知,结合可视化仪表盘,可有效... 目录一、核心监控指标及配置1. 关键监控指标示例2. 配置方法二、自动发现与多实例管理1. 实践步骤

MySQL深分页进行性能优化的常见方法

《MySQL深分页进行性能优化的常见方法》在Web应用中,分页查询是数据库操作中的常见需求,然而,在面对大型数据集时,深分页(deeppagination)却成为了性能优化的一个挑战,在本文中,我们将... 目录引言:深分页,真的只是“翻页慢”那么简单吗?一、背景介绍二、深分页的性能问题三、业务场景分析四、

Linux进程CPU绑定优化与实践过程

《Linux进程CPU绑定优化与实践过程》Linux支持进程绑定至特定CPU核心,通过sched_setaffinity系统调用和taskset工具实现,优化缓存效率与上下文切换,提升多核计算性能,适... 目录1. 多核处理器及并行计算概念1.1 多核处理器架构概述1.2 并行计算的含义及重要性1.3 并

MySQL 多列 IN 查询之语法、性能与实战技巧(最新整理)

《MySQL多列IN查询之语法、性能与实战技巧(最新整理)》本文详解MySQL多列IN查询,对比传统OR写法,强调其简洁高效,适合批量匹配复合键,通过联合索引、分批次优化提升性能,兼容多种数据库... 目录一、基础语法:多列 IN 的两种写法1. 直接值列表2. 子查询二、对比传统 OR 的写法三、性能分析

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

Linux系统性能检测命令详解

《Linux系统性能检测命令详解》本文介绍了Linux系统常用的监控命令(如top、vmstat、iostat、htop等)及其参数功能,涵盖进程状态、内存使用、磁盘I/O、系统负载等多维度资源监控,... 目录toppsuptimevmstatIOStatiotopslabtophtopdstatnmon

MyBatisPlus如何优化千万级数据的CRUD

《MyBatisPlus如何优化千万级数据的CRUD》最近负责的一个项目,数据库表量级破千万,每次执行CRUD都像走钢丝,稍有不慎就引起数据库报警,本文就结合这个项目的实战经验,聊聊MyBatisPl... 目录背景一、MyBATis Plus 简介二、千万级数据的挑战三、优化 CRUD 的关键策略1. 查