微信小程序-基础库-开发文档学习笔记

查看更多学习笔记:GitHub:LoveEmiliaForever
微信小程序开发指南
微信小程序开发文档

小程序基础库

小程序的底层基础库迭代速度是非常快的
组件、API其实都是小程序基础库进行包装提供的,基础库的职责还要处理数据绑定、组件系统、事件系统、通信系统等一系列框架逻辑
小程序的基础库是JavaScript编写的,它可以被注入到渲染层和逻辑层运行

基础库载入时机

为了让小程序业务代码能够调用wx.navigateTo等API以及组件,就需要在启动小程序后先载入基础库接着再载入业务代码
渲染层WebView层注入的称为WebView基础库,逻辑层注入的称为AppService基础库
小程序的基础库不会被打包在某个小程序的代码包里边,它会被提前内置在微信客户端

基础库的版本号

小程序基础库版本号使用 semver规范,格式为 Major.Minor.Patch

  • 通常我们月度发布版本会把Minor提升一位,例如从1.9.x升级到1.10.x
  • 如果是修正版本,会把Patch提升一位,例如1.10.0升级到 1.10.1
  • Major位则是重大特性发布时才会被提升一位

可以通过wx.getSystemInfo()或者wx.getSystemInfoSync()方法获取小程序版本号

console.log(wx.getSystemInfoSync().SDKVersion)

在比较版本号时,不要偷懒,要拆分后按照大小逐个比较

JS异常

WebView层有两种方法可以捕捉JS异常

  • try, catch方案,你可以针对某个代码块使用try,catch包装,这个代码块运行时出错时能在catch块里边捕捉到
  • window.onerror方案,也可以通过window.addEventListener("error", function(evt){}),这个方法能捕捉到语法错误跟运行时错误

逻辑层不存在window对象,因此逻辑层AppService侧无法通过window.onerror来捕捉异常
在逻辑层AppService侧通过把App实例和Page实例的各个生命周期等方法包裹在try-catch里进行捕捉异常
同时在App构造器里提供了onError的回调,当业务代码运行产生异常时,这个回调被触发

基础库的更新

基础库版本变动

小程序的很多能力需要微信客户端来支撑,例如蓝牙、直播能力、微信运动等,可以说,小程序基础库的迭代离不开微信客户端的发布
为了避免新版本的基础库给线上小程序带来未知的影响,微信客户端都是携带上一个稳定版的基础库发布
等到微信客户端正式发布后,我们会开始灰度推送1.7.0版本的基础库到6.5.11的微信客户端里
如果存在重大Bug,那此次推送会被回退,也就是基础库版本回到1.6.0版本

推送基础库过程

在正式灰度推送新版本基础库前,我们内部有严格的自动化测试流程,保证已有的测试用例全部能通过
接着进行灰度推送,一般灰度时长是12个小时,遇到一些重大代码改动时可能灰度时间会更久
灰度推送完成后,我们会发布新能力的文档,此时我们也会关注微信开发者社区的Bug反馈,根据情况再决定是否要推送Patch版本进行一些Bug的修复

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
微信小程序是一种基于微信平台的应用的开发模式,可以快速的开发出符合用户需求的小程序。在小程序开发中,组件是一个非常重要的概念,通过组件可以实现复用性和模块化编程思想。 组件应用是小程序开发基础。通过组件可以将某一模块化并封装起来,使得组件可以在不同的页面间得到复用,大大提升了开发效率并减少了代码冗余。微信小程序提供了丰富的自带组件,包括文本、图片、按钮、输入框等等,开发者也可以自己开发组件来满足自己的需求。实际开发中,通过组件可以快速搭建页面框架和业务逻辑。 Demo是一个演示小程序的示例程序。在小程序的实际开发过程中,一个好的Demo非常重要。通过Demo,开发人员可以更深入的了解小程序开发流程、组件的应用和实际的业务开发等等。在Demo中,通常会包括小程序的一些基础操作,如页面跳转、数据绑定、组件的使用等。而在实际开发中,Demo还会包括一些复杂的业务场景,如支付、登录、数据列表展示等等。Demo不仅为开发者提供了学习和实践的机会,也方便了使用者了解该小程序的功能和特点。 总之,微信小程序组件的应用和Demo的开发都是小程序开发过程中非常重要的两个部分。良好的组件应用和精心设计的Demo,可以在极短的时间内实现小程序开发
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值