微信小程序:uniapp解决上传小程序体积过大的问题

news2024/11/18 11:43:02

概述

在昨天的工作中遇到了一个微信小程序上传代码过大的情况,在这里总结一下具体的解决步骤,首先介绍一下,技术栈是使用uniapp框架+HBuilderX的开发环境。

错误提示

在这里插入图片描述

真机调试,提示包提交过大,不能正常生成二维码,后续上传代码更是不可能了,减少包中的体积顺着这条思路去解决问题。

1.静态图片资源改变成网络请求的方式
我们使用的初衷是,把图片加载在static本地,缓存在本地,以便提升更快的响应速度,第一步剥离大的图片更换成网络请求。

在这里插入图片描述

2.对小程序进行分包

小程序主包最大可以加载到1.5M,加载所有的依赖和插件不能大于2M,小程序中有个解决办法是对小程序进行分包处理,使每个包保持在2M的大小,主包和分包之间直接进行跳转,分包和分包不能跳转。

"optimization" : {
    "subPackages" : true
},

进行了拆包还是没有解决问题,分包的作用主要运行的是代码,也就是说代码要尽量的小,多了需要进行分解。

3.压缩vendor.js

昨天真正的定位问题是vendor.js 1.88M ,小程序开发代码工具-详情-代码依赖分析中查看,解决vendor.js才是根本的解决之道。

使用HBuilderX打包上传来解决问题,HBuilderX -> 发行 -> 小程序(微信),操作的过程失败了一次,是因为需要注意的是需要绑定开发者后台的地方,开发管理->开发设置->小程序代码上传下载小程序代码上传密钥和绑定IP白名单,这个需要管理员同意。

最后包的体积从12.88M压缩到了4.16M,问题得以解决。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1039816.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

为什么PDF打开没有密码,但是不能编辑?

PDF文件在PDF编辑器中打开之后应该是可以直接编辑了的,打开PDF文件的时候没有提出要输入密码,可是进入文件后,不能编辑,比如下图: 提示文件受到限制,无法编辑。这就是因为设置了限制编辑。我们将限制取消就…

web前端项目案例实战

之前也有使用vite2vue3electronc创建桌面端项目,不过 vue-cli-plugin-electron-builder 脚手架插件构建的项目electron版本只有13.x。如今electron版本都到了24,显然不能再用之前的方法创建项目了。于是闲暇时间就捣鼓了electron24vite4搭建桌面程序&…

第5讲:v-if与v-show的使用方法及区别

v-if条件判断 v-if是条件渲染指令,它根据表达式的真假来删除和插入元素,它的基本语法如下: v-if “expression” expression是一个返回bool值的表达式,表达式可以是一个bool属性,也可以是一个返回bool的运算式 &#…

接口自动化测试思路和实战(3):测试库框架

目录 测试库框架 步骤1、在common文件夹下新建common_api_info.py文件,把所有的api接口做个封装 步骤2、修改common_function.py文件 步骤3、修改test_get_access_token_api.py文件 步骤4、修改test_create_user_tag_api.py文件代码; 步骤5、再执行…

怒刷LeetCode的第15天(Java版)

目录 第一题 题目来源 题目内容 解决方法 方法一:哈希表双向链表 方法二:TreeMap 方法三:双哈希表 第二题 题目来源 题目内容 解决方法 方法一:二分查找 方法二:线性搜索 方法三:Arrays类的b…

JAVA学习-全网最详细

🌈write in front🌈 🧸大家好,我是Aileen🧸.希望你看完之后,能对你有所帮助,不足请指正!共同学习交流. 🆔本文由Aileen_0v0🧸 原创 CSDN首发🐒 如…

1960-2017年世界各国总和生育率数据

1960-2017年世界各国总和生育率数据 1、时间:1960-2017年 2、指标:生育率 3、范围:全球各国 4、来源:世界银行 5、指标解释: 总生育率表示假设妇女度过整个生育期并按照当期的年龄别生育率生育孩子所生育的孩子数…

第一次课进行分类代码

System32下的进程 #include <windows.h> #include <stdio.h> #include<TlHelp32.h> #include<psapi.h>int main() {HANDLE hProcessSnap;PROCESSENTRY32 pe32;// 获取进程快照hProcessSnap CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);if (hPr…

微信编辑器自带导出功能,同步到公众号生成链接

​在微信编辑器里编辑好了文章&#xff0c;想把编辑器里的文章复制到其它网站或者分享给好友&#xff0c;怎么操作呢&#xff1f;其实很简单&#xff0c;可以通过编辑器自带的导出功能&#xff0c;或者同步到微信公众号生成链接&#xff0c;那今天小编先给大家说一说编辑器自带…

python setup.py egg_info“ failed with error code 1 in xxxxxxxx问题解决

python setup.py egg_info" failed with error code 1 in xxxxxxxx问题解决 一、问题描述&#xff1a;通过pip安装opencv-python时候&#xff0c;提示安装二、解决办法&#xff1a;升级pip三、结果 一、问题描述&#xff1a;通过pip安装opencv-python时候&#xff0c;提示…

Python 机器学习入门之线性回归

系列文章目录 第一章 Python 机器学习入门之线性回归 线性回归 系列文章目录前言一、线性回归1.线性回归是什么2.线性回归的分类 二、实现线性回归1.步骤2.代价函数3.梯度下降 总结 前言 最近在上机器学习的课程&#xff0c;第一次实验是做线性回归&#xff0c;那神马是线性回…

基于FPGA的图像坏点像素修复算法实现,包括tb测试文件和MATLAB辅助验证

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 vivado2019.2 matlab2022a 3.部分核心程序 timescale 1ns / 1ps // // Company: // Engineer: // // Create Date: 202…

竞赛选题 基于生成对抗网络的照片上色动态算法设计与实现 - 深度学习 opencv python

文章目录 1 前言1 课题背景2 GAN(生成对抗网络)2.1 简介2.2 基本原理 3 DeOldify 框架4 First Order Motion Model5 最后 1 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; 基于生成对抗网络的照片上色动态算法设计与实现 该项目较为新颖&am…

Linux 读写锁

读写锁是一把锁 /*读写锁的类型 pthread_rwlock_tpthread_rwlock_init(pthread_rwlock_t *restrict rwlock, const pthread_rwlockattr_t *restrict attr);int pthread_rwlock_destory(pthread_rwlock_t *rwlock);int pthread_rwlock_rdlock(pthread_rwlock_t *rwlock);int pt…

Android逆向技术高阶大法

原文链接 Android逆向技术高阶大法 安卓应用是一个客户端&#xff0c;与传统软件类似&#xff0c;需要把软件打包&#xff0c;然后通过某种渠道&#xff08;应用市场&#xff09;分发给用户&#xff0c;这是常规的发布方式&#xff0c;它的更新节奏很慢&#xff0c;从你在应用…

系统集成|第十四章(笔记)

目录 第十四章 合同管理14.1 概述及相关概念14.2 项目合同14.3 《合同法》14.4 《仲裁法》 上篇&#xff1a;第十三章、干系人管理 第十四章 合同管理 14.1 概述及相关概念 主要包括合同签订管理&#xff0c;合同履行管理&#xff0c;合同变更管理以及合同档案管理。作为一个重…

自拟实现消息队列(MQ)基于Rabbit MQ(含概念和源码)巨详细!!!!!含思维导图

MQ目录 MQ基本概念什么是MQ&#xff1f;MQ的应用场景 首先先明白需求持久化分析那么MQ如何设计持久化&#xff1f; 可靠性分析高效性分析MQ核心概念&#xff08;装配层&#xff09;实现MQ组件思维导图创建项目导入数据库下载SqLite。 创建组件实体类创建交换机&#xff08;要加…

精通Linux系列第一章:探索Linux世界的大门

文章目录 一、前言二、 什么是Linux&#xff1f;三、Linux系统与Windows系统的区别四、为什么要学习Linux&#xff1f;五、 Linux的优势六、什么是Linux发行版&#xff1f;七、常见的Linux发行版八、如何选择适合你的Linux发行版&#xff1f;九、Linux各种发行版的优势与应用十…

【C语言】进阶——结构体+枚举+联合

①前言&#xff1a; 在之前【C语言】初阶——结构体 &#xff0c;简单介绍了结构体。而C语言中结构体的内容还有更深层次的内容。 一.结构体 结构体(struct)是由一系列具有相同类型或不同类型的数据项构成的数据集合&#xff0c;这些数据项称为结构体的成员。 1.结构体的声明 …

NVM:node多版本管理的下载安装及使用

NVM&#xff1a;node多版本管理的下载安装及使用 使用之前先卸载node&#xff0c;避免各种奇葩问题导致不成功。win卸载&#xff1a;win > 设置 > 应用 > 应用和功能&#xff0c;找到 node 点击出现卸载按钮并且卸载它。 1、下载安装&#xff1a; https://github.co…