问题起因
起因是内部的小程序埋点工具npm包需要新增支持曝光埋点的功能,需要借助标签添加dataset属性信息进行上报,而支付宝小程序提供的API方法my.createIntersectionObserver()在基础库2.7.0版本起
才支持在IntersectionObserver.observe 回调中返回目标节点的 dataset 信息,从而满足支持曝光埋点的功能。
按照官方指南操作升级基础库,本地构建…果然报错了QAQ
于是我开始全网搜索支付宝小程序基础库2.x升级指南,结果相关文章寥寥无几,于是一头扎入支付宝小程序官方社区~
并且在这个过程中我发现了小程序基础库2.0升级通知QAQ~
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Oup5dLAa-1669342568061)(https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/41d039151f4a4e94a88973f85da5836c~tplv-k3u1fbpfcp-zoom-1.image)]
眼看阅读量还不多,但升级基础库肯定是要升级的,那就先来升级看看吧~
什么是基础库
首先我们得弄明白什么是基础库?
官方给出的 — 基础库是负责小程序框架的加载的容器,提供小程序框架需要的标准组件和标准 API 接口。
读完官方文档,结合个人理解简单总结一下:
- 可以在支付宝小程序开发者工具控制台通过 my.SDKVersion 查看当前基础库版本号
- 小程序的能力需要支付宝客户端来支撑,每一版基础库新增能力都需要特定版本以上客户端才能运行;也就是说如果更新了一个高版本基础库,且基于这个基础库提供了某个api / 新增了api入参及功能,在低版本基础库内是不支持使用这个api的 / api的新增功能的
- 当基础库准备更新时,会在客户端内进行逐步灰度直到全量发布。当用户客户端更新至最新基础库后,小程序就会运行在最新的基础库上,也就是说你的小程序运行的基础库是在逐步更新的,但在正常情况下作为小程序使用者的你是没有感知的 <