小程序开发策略:用户信息流程获取授权、渲染性能优化
用户信息流程获取授权
- session_key 有有效期,有效期不通知开发者。他们所知道的是,用户使用该小部件的次数越多,session_key 的有效时间就越长。
- 调用wx.login时,会直接更新session_key,导致旧的session_key失效。
- 小程序中,首先调用wx.checkSession检查登录状态,确保过期的session_key不会被更新,然后调用wx.login检索。代码。用户然后授权小程序获取用户信息。小程序检索加密的用户数据并将加密的数据和代码传递给后端服务。后端通过代码获取session_key,解密数据,并将解密后的用户信息返回给小程序
面试题:如果先对用户信息进行授权,然后再登录,会发生什么情况?
- 当用户授权时,开放平台使用旧的session_key来加密用户的信息。再次调用wx.login登录会刷新session_key。目前后端服务从开放平台获取新的session_key,但无法解密旧session_key加密的数据。获取用户数据失败
- 授权用户数据前调用wx。 .checkSession 怎么样? wx.checkSession 检查登录状态,并确保wx.login 不会刷新session_key,以便后端服务能够正确解密数据。但问题就在这里。如果小程序长时间没有导致session_key过期,wx.login肯定会重新生成session_key,这样又会无法解密用户信息。
性能优化
我们知道view部分是在webview中实现的,所以前端box中的大部分优化方法都适用。
我们知道view部分是在webview中实现的,所以前端box中的大部分优化方法都适用。
我们知道view部分是在webview中实现的,所以前端box中的大部分优化方法都适用。
加载优化
代码包的大小是最直接影响小程序加载和运行速度的因素。代码包越大,不仅下载速度会变长,而且插入业务代码的时间也会变长。所以最好的优化方法就是减小代码包的大小。
呈现三个级别的小程序加载。
优化模式
- 代码压缩。
- 及时清理无用的代码和资源文件。
- 减少代码包中图片等资源文件的大小和数量。
- 加载分包。
优化首屏加载体验的建议
- 预请求:异步数据请求不需要等待页面渲染完成。
- 使用缓存:使用存储API缓存异步请求数据。在第二次运行期间,缓存的数据首先用于渲染页面,然后在后台更新。
- 避免白屏:首先显示骨架页面和基本内容。
- 及时反馈:对需要用户等待的交互操作提供即时反馈,防止用户认为小组件无响应。
使用子包加载优化
构建小程序分包商项目时,build会产生一个或多个功能子包。每个分包的小程序都必须包含一个主包,这个主包。这意味着所有子包都安装了默认的主页/标签页,并且需要一些公共JS资源/脚本,并且子包根据开发人员配置进行拆分。
小程序运行时,默认下载主包并启动主包中的页面。如果用户需要打开子包中的页面,客户端会下载相应的子包,下载完成后显示。
优点:
- 对于开发者来说,可以让小程序拥有更大的代码量,承载更多的功能和服务
- 对于用户来说,可以更快的打开小程序,同时使用更多的功能,而无需影响启动速度
限制:
- 整个程序所有子包大小不超过8M
- 单个子包/主包大小不得超过2M
原生加载配置分包?对于打包,子包配置路径之外的目录将被打包到应用程序(主包)中。 参考原理 即将正式上线正在加载 外包给独立承包商 避免setData使用不当 避免误用onPageScroll 使用自定义组件 在需要频繁更新的场景中,自定义组件更新仅在组件内部完成,不受内容复杂度影响在页面的其他部分。渲染性能优化
版权声明
本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。