教你如何尽可能的避免小程序1M限制

2016/11/14

超出限制截图

小程序1024kb(1M)限制

前言

对于开发微信小程序的程序员来说,你必须有一种"一分钱掰成两半花"的思想准备

正因为有1024KB的限制,才能够显示出一个微信小程序猿的代码水平和能力。
能够在有限的空间里面做更多的事情,那么这也是一种微信小程序编程能力的考量之一

修改

小程序是算编译后的大小是否小于 1024,而不是代码的大小,就针对这个修改,我也有一些问题,欢迎大家讨论告知

1. 图片应该会被保留或者适度压缩?
2. 代码转译后压缩?
3. 基础类是否计算在内?

1024KB有多大

1M = 1024KB = 1024*1024个英文字符 = 1048576个英文字符
差不多你可以写700多个标准函数
这样你可以看出有多大吗?
看来你需要完成的功能必须要700个函数中完成,同时这些还没有算上图片占据的存储空间。

什么是微信小程序的1024KB限制

在微信小程序的官方文档中也有阐述1M限制,不过整体上是由下面的前两条概括

  • 打包上传、预览、发布的微信小程序代码不得超过1024kb,即1M

  • 单次wx.request请求数据、图片资源下载不得超过1024kb,即1M

  • 其他有效资源....不得超过1024kb,即1M(等待你去探索)

为什么需要1024KB的限制

  • 微信就是要让你知道,HI,你的程序必须要是精简的重要的功能。

  • 微信小程序是可以离线使用,即小程序在使用第一次的时候会被存储在本地,有更新时候会自动更新存储

  • 1024kb的数据量总体上不是很大,方便本身微信app占据的空间较少,尤其是在iOS的平台上,限制依然是存在的。

  • 1024kb好听 也好记 -- 我YY的

如何合理的使用微信小程序1024kb

  • 设计减少资源消耗

    • 让设计尽量设计简约,遵从官方文档
      小程序UI设计首先需要阅读微信小程序设计指南72指南中给出了一些设计效果,大部分设计效果是微信小程序中内置效果,使用时会大大减少代码量。

    • 图片等必须经过压缩处理,css精灵等
      这一点在前端的开发日常生活中很常见,因为图片会耗费大量存储资源,有效的进行压缩,会省出很多空间来让程序猿写逻辑代码。

  • 代码优化减少冗余

    • 多使用官方给你的组件效果,在其基础上进行效果改造
      这一点与设计沟通好,很多效果如果会耗费大量代码或者图片来进行编码的话,可以考虑UI来去除效果。

    • 合理的设计代码中的公共类,公共属性
      代码行数有限制的情况下,需要优先考虑公共基础的设计,公共类和公共属性,会有效的解决在程序编写过程中的冗余,这样也会省下一部分资源,让给逻辑处理
      这里有我以前写的一个实例,虽然不全,也可以参考一下


我尝试总结一下在微信小程序编写过程中的几个规则,当然这几条是建立在你所做的小程序功能较多,存储资源吃紧,当然我也建议即使存储不吃紧,也可以严格要求自己。

  • 逻辑和UI的优先级是逻辑优先,UI滞后。

  • 一切以能省则省的原则,一行代码可以解决,不能写两行

添加新评论