r***@icloud.com
r***@icloud.com
  • 发布:2019-04-16 14:27
  • 更新:2019-05-07 21:29
  • 阅读:2906

iOS开发原生插件,回调不执行

分类:uni-app

iOS开发UniApp原生插件时,JS调用原生代码,原生代码执行完毕调用JS回调方法(WXCallBack),不执行。控制台报错如下:

<Weex>[error]WXBridgeContext.m:1153, jsLog: [JS Framework] Failed to execute the callback function:

  • TypeError: plus.postMessage is not a function. (In 'plus.postMessage({type:'requireNativePluginCallback',data:{id:parseInt(a.replace('CALLBACK_','')),ret:d,keepAlive:!!f}},b)', 'plus.postMessage' is undefined) __ERROR

代码片段:
JS:
tempPlugs.payWith('裤子', 2, '50.00', 'skuStr', result => {
uni.showModal({
title:'结果',
content:'测试'
});
this.result = result;
});

iOS:

  • (void)payWith:(NSString )name quantity:(NSInteger)quantity price:(NSString )priceStr sku:(NSString )skuStr callback:(WXCallback)callback {
    [[YSPaypalHelper sharedInstance] payWith:name quantity:quantity price:priceStr sku:skuStr callback:^(NSDictionary
    _Nonnull ret) {
    if (callback) {
    callback(ret);
    }
    }];
    }
2019-04-16 14:27 负责人:无 分享
已邀请:
DCloud_iOS_XHY

DCloud_iOS_XHY

离线sdk中有官方 richalert 的源码,你比对一下看一下哪里写的有问题

  • r***@icloud.com (作者)

    我用之前的版本,本地调试,回调时执行的,用最新的SDK,就报错,云打包也报错。

    确定跟1.9的SDK没有关系吗?

    2019-04-16 15:51

  • r***@icloud.com (作者)

    我下载了最新的richalert demo,运行后,点击进入vue界面,回调不执行,报同样的错误:

    <Weex>[error]WXBridgeContext.m:1153, jsLog: [JS Framework] Failed to execute the callback function:



    • TypeError: plus.postMessage is not a function. (In 'plus.postMessage({type:'requireNativePluginCallback',data:{id:parseInt(a.replace('CALLBACK_','')),ret:d,keepAlive:!!f}},b)', 'plus.postMessage' is undefined) __ERROR

    2019-04-16 16:08

  • DCloud_iOS_XHY

    回复 r***@icloud.com:刚刚确认了,最新的sdk有bug,你可以在 manifest.json 中 "app-plus" 节点下添加 "usingComponents" : true, 然后在重新编译项目即可解决这个问题

    2019-04-16 18:03

  • r***@icloud.com (作者)

    回复 DCloud_iOS_XHY:多谢!

    2019-04-16 18:37

  • r***@icloud.com (作者)

    回复 DCloud_iOS_XHY:已经可以了

    2019-04-16 18:37

  • lori

    回复 DCloud_iOS_XHY:我使用了usingComponents 引起了其他地方的报错,请问有别的办法可以解决这个bug吗?另外新的sdk什么时候可以发布?

    2019-04-17 16:23

  • DCloud_iOS_XHY

    回复 lori:麻烦把新的报错详细描述一下,我们排查一下

    2019-04-17 16:28

JayGoo

JayGoo

官方说改好了,可是我的依然有问题,4.18号那版,大家呢?

7***@qq.com

7***@qq.com

解决了吗? 求回复

该问题目前已经被锁定, 无法添加新回复