插件功能页从小程序基础库版本 2.1.0 开始支持。
某些接口不能在插件中直接调用(如 wx.login),但插件开发者可以使用插件功能页的方式来实现功能。目前,插件功能页包括:
- 获取用户信息,包括
openid
和昵称等(相当于 wx.login 和 wx.getUserInfo 的功能),详见 用户信息功能页; - 支付(相当于 wx.requestPayment),详见 支付功能页;
从基础库版本 2.16.1 起,以下三个功能页已经废弃,可以直接调用对应接口实现功能;原有和新使用的 <functional-page-navigator>
在点击后将不会跳到功能页,而是直接生效:
- 收货地址功能页(直接使用 wx.chooseAddress)
- 发票抬头功能页(直接使用 wx.chooseInvoiceTitle)
- 发票功能页(直接使用 wx.chooseInvoice)
要使用插件功能页,需要先激活功能页特性,配置对应的功能页函数,再使用 functional-page-navigator 组件跳转到插件功能页,从而实现对应的功能。详情请参考下文。
使用插件功能页前,需要确定插件已经 开通,否则可能出现 functional-page-navigator
点击后无响应等情况
# 插件所有者小程序
开始开发之前,我们需要知道,插件功能页是指 插件所有者小程序 中的一个特殊页面。
插件所有者小程序,指的是与插件 AppID 相同的小程序。例如,“小程序示例”小程序开发了一个“小程序示例插件”,那么无论这个插件被哪个小程序使用,这个插件的 插件所有者小程序 都是“小程序示例”。下文中会继续使用 插件所有者小程序 这个说法。
# 插件所有者小程序开发方法
通常,在开始使用插件功能页的时候,需要开启两个开发者工具窗口,其中一个打开插件项目,另一个打开插件所有者小程序的小程序项目。例如,一个打开“小程序示例插件”项目,另一个打开“小程序示例”项目。
这两个窗口,前者用于编辑插件,后者用于编辑插件所有者小程序。下文中所有需要编辑插件所有者小程序的内容,都是在后者中进行。
目前,功能页的跳转目前不支持在开发者工具中调试,请在真机上测试。初次进行真机开发测试时,通常步骤如下:
- 在开发者工具上打开插件所有者小程序项目,并点击“预览”;
- 用测试用的真机扫一下预览二维码,此时会进入插件所有者小程序,进入后就可以直接退出这个小程序;
- 在开发者工具上打开插件项目,将插件中 functional-page-navigator 中的
version
属性设置为develop
; - 点击预览可以生成插件预览二维码,用测试用的真机扫码即可预览功能页;如果更改了插件代码,重新生成并扫描插件的预览二维码即可;
- 如果过了一段时间之后,跳转功能页时出现“开发版已过期”这样的提示,从第 1 步开始重试一次。
注意:functional-page-navigator
的 version=develop
仅用于调试,因此在插件提审前,需要:
- 确保已发布设置了
"functionalPages": true
的插件所有者小程序; - 确保所有的
functional-page-navigator
组件属性设置为version="release"
。