小程序的插件开发
参考:https://blog.poetries.top/2021/04/20/wx-weapp-plugin/
-
在插件发布之后,其他小程序方可调用。小程序平台会托管插件代码,其他小程序调用时,上传的插件代码会随小程序一起下载运行
-
可以提供一种模块化和可复用的方式来扩展小程序的功能
-
插件可以被多个小程序引用,从而减少重复开发,提高开发效率和代码质量
-
插件不能独立运行,必须嵌入在其他小程序中才能被用户使用;而第三方小程序在使用插件时,也无法看到插件的代码。因此,插件适合用来封装自己的功能或服务,提供给第三方小程序进行展示和使用
-
在主包中引用插件时,会占用主包的体积
相比js文件/自定义组件有哪些优势?
- 插件拥有更强的独立性,拥有独立的 API 接口
具体场景
-
支付插件: 小程序中常常需要支付功能,开发一个支付插件可以集成多种支付方式,供多个小程序使用,避免不同小程序重复实现支付逻辑。
-
图表插件: 图表展示在数据分析类小程序中常用,开发一个图表插件可以包含多种图表类型和定制化选项
-
消息推送插件: 小程序常需要消息推送功能,开发一个消息推送插件可以整合不同的推送服务商,使推送逻辑集中处理。
-
电商插件: 如果公司运营多个小程序,可以开发一个电商插件,包含商品展示、购物车、下单等功能,方便共享电商业务逻辑
-
登录认证插件: 为了遵循用户隐私保护规则,登录认证逻辑可能涉及多个小程序,一个统一的登录认证插件可以方便管理用户登录状态。
-
提供某个业务的服务
-
提供查询快递信息的服务
-
提供查询天气的服务
-
提供外卖(美团外卖)的服务 -例如每个餐厅需要的小程序风格都不一样,但他都需要外卖功能,那这时就可以给餐厅都定制一个小程序,在外卖部分的功能可以直接使用美团外卖提供的外卖插件
-
插件开发接入流程
- 需要开通小程序插件功能才能使用的
开发插件
项目中包含了两个目录:
miniprogram目录:放置的是一个小程序,该小程序是用于调试、测试插件用的。plugin目录:插件代码的存放目录,用于放置我们开发的插件
注意问题:
- 由于插件需要 appid 才能工作,请填入一个 appid;
miniprogram/app.json配置如下:
// 配置插件名和插件对应的版本号和appId
"plugins": {
"myPlugin": {
"version": "dev",
"provider": "wxxxxxxxxxxxxx"//主体小程序的appId
}
},
插件发布
插件发布前需要提交微信小程序团队审核,审核通过后才可发布。
提交审核时,插件开发者需要填写以下信息:插件服务类目、标签、预览图及功能描述。
插件版本管理
插件参考
微信小程序插件,可以应用其他小程序平台吗
比如微信小程序插件、支付宝小程序插件,都有不同的插件规范体系
- 如果需要插件共享到不同平台的小程序,需要特殊的处理
- 可以写一个工具,通过条件编译适配
- 对于不同平台的插件规范体系,把每个小程序平台的兼容逻辑抽取了出来, 可以使用条件编译和适配的方式,在不同平台上进行不同的实现,这样就可以支持对应平台的编译
- 可以写一个工具,通过条件编译适配