• 小程序开发注意的坑


    在目前小程序开发的时候我们需要注意的点:

    1.小程序针对非空,undefined情况需要想好处理,避免出现任何 JavaScript 异常,导致页面白屏

    2.合理控制图片的大小:图片太大会增加下载时间和内存的消耗,应根据显示区域的大小合理控制图片的大小

    3.每次联调可以看后端请求接口的时间,所有请求的耗时不应该太久,请求耗时太长会让用户一直等待甚至离开,应当优化好服务器的处理时间。减小回包大小,让请求快速响应

    (目前可能存在的坑:wx.request 在开发者工具上请求耗时没问题,但是进入真机之后,Time很短,但是WaterFall很长,尤其是在安卓机4g缓慢下)

    4.避免短时间内发起太多的图片请求:短时间内发起太多图片请求会触发浏览器并行加载的限制,可能导致图片加载慢,用户一直处理等待。应该合理控制数量,可考虑使用雪碧图技术或在屏幕外的图片使用懒加载

    5.避免短时间内发起太多的请求:短时间内发起太多请求会触发小程序并行请求数量的限制,同时太多请求也可能导致加载慢等问题,应合理控制请求数量,甚至做请求的合并等,目前小程序请求并发阈值为10个但是wx.connectSocket 的最大并发限制是5个[不过这个我们也没用过。。。。。]。

    6.避免 setData 的数据过大,以及频繁的调用setData(!!!)由于小程序运行逻辑线程与渲染线程之上,setData的调用会把数据从逻辑层传到渲染层,数据太大会增加通信时间,这个是非常耗费性能的事情,所以可以如果有不得已的情况在短时间内频繁调用setData,考虑做防抖和节流

    7.应让图片按原图宽高比例显示:图片若没有按原图宽高比例显示,可能导致图片歪曲,不美观,甚至导致用户识别困难。可根据情况设置 image 组件的 mode 属性,以保持原图宽高比

    8.避免过大的 WXML 节点数目:建议一个页面使用少于 1000 个 WXML 节点,节点树深度少于 30 层,子节点数不大于 60 个。一个太大的 WXML 节点树会增加内存的使用,样式重排时间也会更长

    9.避免将不可能被访问到的页面打包在小程序包里:小程序的包大小会影响加载时间,应该尽量控制包体积大小,避免将不会被使用的文件打包进去

    10.避免使用 css ':active' 伪类来实现点击态:使用 css ':active' 伪类来实现点击态,很容易触发,并且滚动或滑动时点击态不会消失,体验较差

    11.如果有滚动区域建议开启惯性滚动:惯性滚动会使滚动比较顺畅,在安卓下默认有惯性滚动,而在 iOS 下需要额外设置 -webkit-overflow-scrolling: touch 的样式

    12.所有资源请求都建议使用 HTTPS(使用 HTTPS更加安全,HTTP 是明文传输的,存在可能被篡改内容的风险)

    13.小程序中未使用的wxss的样式应该尽量去掉:我们应该按需引入 wxss 资源,如果小程序中存在大量未使用的样式,会增加小程序包体积大小,从而在一定程度上影响加载速度

    14.如果是相同的图片的请求可以开启 HTTP 缓存控制后,下一次加载同样的图片,会直接从缓存读取,提升加载速度

    15.如果页面中含有定时器,一定需要跟着页面进行回收,定时器是全局的,并不是跟页面绑定的,当页面因后退被销毁时,定时器应注意手动回收



    转载于:https://www.jianshu.com/p/25f954e1d24f

    送给写小程序的你。

  • 相关阅读:
    SQL基础复习03--数据查询SQL语句(单表查询)
    SQL基础复习02--数据操纵SQL语句
    数据结构与算法01--复杂度
    SQL基础复习01--SQL基础与数据定义SQL语句
    Azure Data Studio的初步了解与使用
    ASP.NET Core Web API 使用DynamicLinq实现排序功能
    Vue3-说说Vue 3.0中Treeshaking特性?举例说明一下?
    JavaScript高频手写面试题
    Java常用文件操作-1
    Java 架构师之路(2)
  • 原文地址:https://www.cnblogs.com/wilsunson/p/12808890.html
Copyright © 2020-2023  润新知