已按照文档说明配置,还是报 callMiniProgramFunction:fail File not found
因为插件开发,涉及源小程序和插件两个部分,很难提供代码片段,核心内容如下:
小程序中 app.json 已配置 "functionalPages": true
根目录下建立文件 functional-pages/request-payment.js 如下
exports.beforeRequestPayment = function (paymentArgs, callback) { wx.login({ success(data) { wx.request({ method: 'POST' , url: 'https://foo.com/api/login' , data: { code: data.code }, success: function (res) { wx.request({ method: 'POST' , url: 'https://foo.com/api/order' , data: paymentArgs, header: { Token: res.data.token }, success: function (res) { if (res.data.code == 0) { callback( null , res.data.data) } else { callback(res.data.message) } }, fail: function (res) { callback(res) }, }) }, fail: function (res) { callback(res) }, }) }, fail: function (res) { callback(res) }, }) } |
插件中
< functional-page-navigator version = "develop" name = "requestPayment" args = "{{ { fee: total, paymentArgs: paymentArgs } }}" bind:success = "paymentSuccess" bind:fail = "paymentFailed" > < button type = "primary" >微信支付</ button > </ functional-page-navigator > |
请确认已经在 插件所有者小程序 中加入这个文件,并且,加入(或更新)这个文件之后要重新扫描所有者小程序的开发版二维码,以确保测试用的手机上的开发版所有者小程序已被更新。之后再回到插件项目来测试插件功能页。
已经反复重复次步骤很多次,并且用之前未加载过插件所有者小程序的真机,尝试,均报错显示
callMiniProgramFunction:fail File not found
appid: wxd98129fff53dafc3
版本库: 2.4.4
文件路径为 小程序跟目录/functional-pages/request-payment.js
文件使用 exports.beforeRequestPayment = function(paymentArgs, callback){} 方法导出
这个报错比较明确,即找不到 functional-pages/request-payment.js 。请确认插件所有者小程序项目设置中的 appid 确实是 wxd98129fff53dafc3 ,并且在这里显示“小程序模式”:
发现是开发者工具的“上传时进行代码保护”功能有 bug 。我们处理一下。
关闭代码保护后确实效果不一样,但也不是正常的,不知道你们修改后会不会正常
目前关闭代码保护后,
调起支付页面,点击支付按钮会一直显示loading图标,长时间无响应
我自己的用例一直没有问题(我是看了你的项目设置截图猜到的)。
一直显示 loading 图标,说明你的 beforeRequestPayment 没有 callback 。
插件所有者小程序版本号是1.3,正常调用已经上线部署,然后所有者小程序升级版本号1.4,调用失败,所有这小程序回退到1.3也是不可以的,这种怎么操作
我是本地不会报错,但是发布之后,一直提示找不到这个文件,但是本地都可以调起支付的
麻烦问下,exports.beforeRequestPayment
如何传参到控件呢
你好,建议先参考下面的回答
支付功能页
https://developers.weixin.qq.com/community/develop/doc/00002ece5fc9a805a5c75bbdb51400
你好,小程序端开发版已经打开了无数次了,可是插件端还是没有反应
appid提供下
你好借个楼,我也遇到了一样的问题,app.json 和 functional-pages/request-payment.js 都已经和完成,还是报 callMiniProgramFunction:fail File not found错误,appid: wxd98129fff53dafc3