美文网首页
WebViewJavascriptBridge 使用记录

WebViewJavascriptBridge 使用记录

作者: _风雨 | 来源:发表于2021-12-02 22:34 被阅读0次

现在的项目里面有WebView与js的交互,因为第一次用这个,走了弯路,特此记录

js调用原生

// JS主动调用OjbC的方法,首先原生需要注册方法
// 这是JS会调用getUserIdFromObjC方法,这是OC注册给JS调用的
// JS需要回调,当然JS也可以传参数过来。data就是JS所传的参数,不一定需要传
// OC端通过responseCallback回调JS端,JS就可以得到所需要的数据
[self.bridge registerHandler:@"getUserIdFromObjC" handler:^(id data, WVJBResponseCallback responseCallback) {
    NSLog(@"js call getUserIdFromObjC, data from js is %@", data);
    if (responseCallback) {
      // 反馈给JS
      responseCallback(@{@"userId": @"123456"});
    }
}];

// 这里是js里面的方法,调用原生
[self.bridge callHandler:@"getUserIdFromObjC" data:@{@"name": @"标哥"} responseCallback:^(id responseData) {
    NSLog(@"from js: %@", responseData);
}];
  

原生调用js, 类似js调用原生,只是方法互换了

首先js注册方法
伪代码
[bridge registerHandler: ""]

其次原生调用js
[bridge callHandle]

反正就记住registe是注册方法,callHandle是调用

原文连接

相关文章

网友评论

      本文标题:WebViewJavascriptBridge 使用记录

      本文链接:https://www.haomeiwen.com/subject/ieiuxrtx.html