当前位置: 首页 > news >正文

离职前对项目进行复盘

1、小程序中使用echart时,如何使包最小?

在日常开发中,如果echart包太大会影响主包的大小,所以一般都有以下几种方式进行缩包:

1、只使用当前图形的echart分包。如只使用雷达图,就只下载有雷达图的包

2、对现有的包进行压缩

3、将echart.min.js放入到分包中,防止主包超限。同时预加载优化。

{ "subPackages": [ { "root": "subpackages/chart", "pages": ["pages/report/index"] } ], // 预加载优化(可选,wifi下提前加载图表分包) "preloadRule": { "pages/index/index": { "network": "wifi", "packages": ["chart"] } } }

4、加上平台判断。如微信系统使用,可以用本地的小程序;用require(../xxxx/echart.min.js);如果其他平台使用,可以直接使用 import * as echarts from 'echarts'。根据平台实际效果选择。

2、vite配置说明

vite中有常用的defineConfig和loadEnv函数,前者是用来进行配置,后者是用来获取.env配置的。

closeBundle:打包完成时触发钩子函数。

plugins:自增插件包

css:中preprocessorOptions预处理配置,可以配置对应的scss货车less。

build:drop_console打包时,移除console;drop_debugger,打包时移除debugger;format.comments:打包时移除所有的注释。sourcemap:压缩打包体积;reportCompressedSize:关闭文件计算。

3、小程序单一性原则要严格遵守

如一段代码太多要进行封装;内容太多要拆分组件;同时小程序在加载列表时,一次性加载不能太多,当列表编译超过5000条,会导致加载崩溃;

4、想要根据手机的尺寸,进行兼容性加载,就要在启动的时候,将手机的参数注入到容器中,可以通过provide/inject方法进行注入。

5、底部的窗口在有些页面使用时,不能都用view;有时候还需要使用。在页面设计时,一定要对最小尺寸进行页面点检,有些设计都是按照大尺寸进行的,对小手机的兼容性,需要调整设计。

6、AI编程时,一定要先返回修改方案,再进行修改;因为有些时候,AI的修改会导致页面报错,导致你都找不到问题在哪里,尤其是本地使用A模式,但是修改按照B模式修改。

7、接口执行不要使用promise.All同时执行多个接口,这样一旦有一个接口报错,就会导致整个页面报错,在处理接口时,一定要做兼容性处理,报错处理,避免一个接口报错导致整个页面崩溃。

8、对老项目,一定要只能添加组件进行局部替换,不能直接修改组件;因为直接修改可能导致不知道多少个用到组件的地方产生不必要的报错。

9、小程序页面内存有效,不能超过2M,所以在开发时,不能学着APP一样设计小程序,尤其是将多个页面逻辑放在一个页面,容易导致页面崩溃,而且不好维护。

10.内初溢出如何进行优化。

1、列表页面不能无限累积。当页面积累的数据太多,也可能导致内存溢出。

2、reactive 不要包裹Store.

3、当页面变量太多事,可以部分使用内存消耗更小的shallowRef

4、setTimeout 也要设置id,这样在destroyed时,可以进行销毁;定时器也要在页面销毁时进行清理

5、将大的模版要拆成小的模版。按照许小型原则,一个页面一个组件。

6、使用防抖。在涉及按钮、切换的时候,要使用防抖。

7、进行代码审核,去掉废代码,不需要的代码、将css样子尽可能封装。

http://www.jsqmd.com/news/1106791/

相关文章:

  • MC74HC165A与PIC32MZ构建高效输入扩展系统
  • 终极指南:NFD云解析如何一键解析20+网盘直链
  • 嵌入式条形码识别系统开发与TM4C123优化实践
  • 从算卦到具身:一套跨越三千年的“不确定系统建模”抽象
  • Ansible 遇见 AI:从自动化到智能化的运维新纪元(小白也能懂)
  • 超高性能管线式HTTP请求(实践·原理·实现)
  • 经常遇见的问题--1
  • 国产升降压突破:ZCC8710对标TPS631000,宽压低功耗双优势
  • AI数字员工的技术架构分层:从轻量验证到全栈私有化,怎么选?
  • 化工设计流程与阶段解析:从可研到竣工图的全过程管理
  • AI Collection:3367 个生成式 AI 应用,一个地方全找到
  • 2026大厂Java岗面试总结(八股/场景/项目/AI全覆盖,附答案)| 建议收藏
  • 操作系统复习(一)
  • SSH 协议学习:Xshell 连接虚拟机与 Xftp 文件传输实操教程
  • 基于自抗扰+重复控制的永磁同步电机转速、电流环控制仿真(仿真+参考文献)
  • 6DoF姿态测量:IIM-42652与PIC18F4455的硬件融合与算法优化
  • Project Maven、Palantir Ontology、Gotham与AIP:从数据融合到作战流程的技术链路
  • C++密码学工具箱:从凯撒密码到AES/RSA的算法实现与工程实践
  • TensorFlow 3D U-Net医学影像分析实战:从DICOM到临床可用工具
  • 央媒、门户、垂直、地方、自媒体、一站式平台:2026年六类媒体发稿渠道选型指南
  • League Akari:英雄联盟玩家的智能工具箱,提升游戏体验的终极指南
  • Attention Sinks and Compression Valleys in LLMs are Two Sides of the Same Coin
  • 学完GEO课程后怎么落地:30天执行路径参考
  • 客户案例 | 万华化学x燕千云,智能化ITSM平台‌破解‌数字化转型服务效率难题
  • UFS 4.1规范的量产烧录:从MIPI M-PHY V4.1到UniPro V2.0的协议适配分析
  • 京东商品详情全自动采集实战|标准化 JD 商品详情接口 + 多 AI Agent 搭建无人化货源分析系统
  • 线上与测试环境excel导出列不同
  • SwapU项目数据库设计文档
  • 第一章Netty,Selector处理可写事件
  • 若依框架整合SM2国密算法:前后端登录加密改造实战