小程序包大小超过2M的解决方法

小程序的包被限制在2M如下, 超出的时候点击预览, 发现报错:javascript

Error: 代码包大小为 3701 kb,上限为 2048 kb,请删除文件后重试

1. 优化代码, 删除掉不用的代码css

2. 图片压缩或上传服务器html

通常图片所占空间较大,尽可能不要放在小程序本地文件夹中,若是图片很少咱们也能够对图片进行压缩,我常常使用的图片压缩平台:点击这里vue

也能够将图片上传到服务器上,进行外链引用, 咱们使用的是阿里云oss存储, 另外也能够经过图片托管平台对图片进行托管, 我找到的的图片托管平台:点击此处java

另外, 经过cli命令建立的uni app项目,可将图片或字体图标放入assets文件夹下,经过require引入, 也可减小主包大小json

3. 分包加载小程序

官方推出小程序分包加载这一功能,对于万千小程序开发者来讲这无疑是天大的喜讯,关于如何分包,微信官方文档已经解释的十分清楚,在进行分包以前建议认真阅读官方文档服务器

接下来简单介绍一下在不一样框架中的使用:微信

在uni app中:app

 uni app经过cli初始化的小程序目录结构以下:

├── src
    ├── main.js
    ├── App.vue
    ├── pages.json
    ├── manifest.json
    ├── orderPackages
    │   └── pages
    │       ├── goodsDetail
    │       └── myorder
    ├── pages
    │   ├── index
    │   └── user
    └── utils

需在pages.json中配置subPackages字段

{ "pages": [ { "path": "pages/index/index", "style": { "navigationBarTitleText": "首页" } }, { "path": "pages/user/user", "style": { "navigationBarTitleText": "我的中心" } } ], "subPackages": [{ "root": "orderPackages", "pages": [{ "path": "pages/goodsDetail/goodsDetail", "style": { "navigationStyle": "custom" } }, { "path": "pages/myorder/myorder", "style": { "navigationBarTitleText": "个人订单" } } ] }] }

在页面中跳转分包页面路径:

uni.navigateTo({ url: `/orderPackages/pages/order/order` })

在taro中:

taro初始化的小程序目录结构以下:

├── src
    ├── app.js
    ├── app.scss
    ├── index.html
    ├── packageA
    │   └── pages
    │       ├── goodsDetail
    │       └── myorder
    ├── pages
    │   ├── index
    │   └── user
    └── utils

需在app.js中配置subPackages字段

config = {
    pages: [
      'pages/index/index',
      'pages/user/user'
    ],
    subPackages: [
      {
        'root': 'packageA',
        'pages': [
          'pages/goodsDetail/goodsDetail',
          'pages/myorder/myorder'
        ]
      }
    ]
  }

在页面中跳转分包页面路径:

taro.navigateTo({ url: `/orderPackages/pages/order/order` })

以上只罗列了uni app和taro框架分包加载的步骤, 原生小程序分包方法根据官方文档便可快速实现,小程序框架虽多, 大都大同小异,若是后续有使用其余框架进行开发,会进行补充。

相关文章
相关标签/搜索