代码分包加载
主包仅保留核心功能:将启动页、TabBar页面、公共组件及工具库保留在主包内
按业务模块划分分包:每个分包不超过2MB,总包不超过20MB
// app.json配置示例 { "pages": ["pages/index"], "subPackages": [ { "root": "subpackages/shop", "pages": ["detail", "cart"] } ] }
独立分包优化启动速度:配置independent:true
实现无需主包加载(适用于高频独立功能)
静态资源外链化
图片/字体压缩:使用TinyPNG、Squoosh等工具压缩至WebP格式(压缩率提升30%-70%)
资源托管至CDN:将图片/音频/视频上传至阿里云OSS或腾讯云COS,通过URL动态加载
字体图标按需引入:避免全局引入字体文件,改用SVG图标或Unicode编码
代码精简与压缩
Tree Shaking清理无用代码:通过Webpack配置删除未引用模块
JS混淆压缩:使用UglifyJS或Terser进行变量名缩短与空格删除
WXML/WXSS压缩:删除注释、合并重复样式,使用复用结构
// 示例:使用UglifyJS压缩脚本 const uglify = require('uglify-js'); const compressed = uglify.minify(fs.readFileSync('app.js')).code;