当前位置: 首页 > news >正文

小程序插件使用

插件介绍
插件是对一组 js 接口、自定义组件 或页面的封装,用于嵌入到小程序中使用。插件不能独立运行,必须嵌入在其他小程序中才能被用户使用;而第三方小程序在使用插件时,也无法看到插件的代码。因此,插件适合用来封装自己的功能或服务,提供给第三方小程序进行展示和使用。

插件开发者可以像开发小程序一样编写一个插件并上传代码,在插件发布之后,其他小程序方可调用。小程序平台会托管插件代码,其他小程序调用时,上传的插件代码会随小程序一起下载运行。

相对于普通 js 文件或自定义组件,插件拥有更强的独立性,拥有独立的 API 接口、域名列表等,但同时会受到一些限制,如 一些 API 无法调用或功能受限。还有个别特殊的接口,虽然插件不能直接调用,但可以使用 插件功能页 来间接实现。

接入流程
以下为插件开发接入流程:

  1. 开通插件功能
  2. 填写开发信息并开发
  3. 完善基本信息
  4. 提交审核、发布
  5. 管理插件使用申请

开通插件功能
开发插件前,请阅读了解 《小程序插件接入指南》 了解开通流程及开放范围,并开通插件功能。如果未开通插件功能,将无法上传插件。
插件开发
插件开发文档
插件的功能描述、使用步骤等,例如:收钱吧轻pos插件的说明文档
使用插件
添加插件

小程序管理后台的“设置-第三方设置-插件管理”中添加插件。
开发者可登录小程序管理后台,通过 appid 查找插件并添加。如果插件无需申请,添加后可直接使用;否则需要申请并等待插件开发者通过后,方可在小程序中使用相应的插件。

引入插件代码包
使用插件前,使用者要在 app.json 中声明需要使用的插件,例如:

{"plugins": {// 插件名称"lite-pos-plugin": {"version": "1.0.0", // 插件的版本号"provider": "wx7903bb295ac26ac7" // 插件的appid}}
}

插件的自定义组件

使用插件提供的自定义组件,和 使用普通自定义组件 的方式相仿。在 json 文件定义需要引入的自定义组件时,使用 plugin:// 协议指明插件的引用名和自定义组件名,例如:

{"usingComponents": {"hello-component": "plugin://myPlugin/hello-component"}
}

插件页面跳转

需要跳转到插件页面时,url 使用 plugin:// 前缀,形如 plugin://PLUGIN_NAME/PLUGIN_PAGE, 如:

<navigator url="plugin://myPlugin/hello-page">Go to pages/hello-page!
</navigator>
wx.navigateGo({url: `plugin://lite-pos-plugin/cashierV2?token=${order_token}&appid=${appId}&openid=${open_id}&selected=giftcard&union_id=${union_id}`
});

插件的js接口

使用插件的 js 接口时,可以使用 requirePlugin 方法。例如,插件提供一个名为 hello 的方法和一个名为 world 的变量,则可以像下面这样调用:

var myPluginInterface = requirePlugin('myPlugin');myPluginInterface.hello();
var myWorld = myPluginInterface.world;

基础库 2.14.0 起,也可以通过插件的 AppID 来获取接口,如:

var myPluginInterface = requirePlugin('wxidxxxxxxxxxxxxxxxx');

接入成功案例
收钱吧轻POS插件=>欧舒丹

http://www.xdnf.cn/news/1328707.html

相关文章:

  • RWA加密金融高峰论坛星链品牌全球发布 —— 稳定币与Web3的香港新篇章
  • Vue 2 项目中快速集成 Jest 单元测试(超详细教程)
  • 哈希:两数之和
  • 从零开始的云计算生活——第四十六天,铁杵成针,kubernetes模块之Configmap资源与Secret资源对象
  • 【技术揭秘】AI Agent操作系统架构演进:从单体到分布式智能的跃迁
  • 告别手写文档!Spring Boot API 文档终极解决方案:SpringDoc OpenAPI
  • 大数据数据库 —— 初见loTDB
  • 视觉采集模块的用法
  • A股大盘数据-20250819 分析
  • 云原生俱乐部-shell知识点归纳(1)
  • 力扣57:插入区间
  • 决策树剪枝及数据处理
  • AI 药物发现:化学分子到机器学习数值特征的转化——打通“化学空间”与“模型空间”关键路径
  • 【Git 子模块与动态路由映射技术分析文档】
  • Matplotlib数据可视化实战:Matplotlib子图布局与管理入门
  • 疏老师-python训练营-Day50预训练模型+CBAM注意力
  • PCL+Spigot服务器+python进行MC编程(使用Trae进行AI编程)---可以生成彩虹
  • Hugging Face 核心组件介绍
  • 35岁对工作的一些感悟
  • Ansible 中的文件包含与导入机制
  • noetic版本/ubuntu20 通过moveit控制真实机械臂
  • 常见的对比学习的损失函数
  • DataAnalytics之Tool:Metabase的简介、安装和使用方法、案例应用之详细攻略
  • 数字ic后端设计从入门到精通14(含fusion compiler, tcl教学)半定制后端设计
  • plantsimulation知识点25.8.19 工件不在RGV中心怎么办?
  • c#联合halcon的基础教程(案例:亮度计算、角度计算和缺陷检测)(含halcon代码)
  • 力扣面试150(60/150)
  • 机器学习之决策树:从原理到实战(附泰坦尼克号预测任务)
  • Mac(七)右键新建文件的救世主 iRightMouse
  • 大数据MapReduce架构:分布式计算的经典范式