WKWebView 调用 evaluateJavaScript 出错 ,出现闪退

HTML 代码

functionpayResult(str){

     if(str =='true'){ 

      ...     

   }

 }

OC 代码

NSString * jsStr = [NSString stringWithFormat:@"ocContent('%@','%@')",@"参数1",@"参数2"];

 [_wkWebView evaluateJavaScript:jsStr completionHandler:^(id_Nullableresult,NSError*_Nullableerror) {

}];

这么写的过程中总是崩溃,原因是js中可能有alert,但是oc中的方法没有进行操作,方法如下:

- (void)webView:(WKWebView*)webView runJavaScriptAlertPanelWithMessage:(NSString*)message initiatedByFrame:(WKFrameInfo*)frame completionHandler:(void(^)(void))completionHandler{

    UIAlertController *alert = [UIAlertController alertControllerWithTitle:message message:message preferredStyle:UIAlertControllerStyleAlert];

    [alertaddAction:[UIAlertAction actionWithTitle:@"知道了" style:UIAlertActionStyleCancel handler:^(UIAlertAction * _Nonnull action) {

        completionHandler();

    }]];

    [self presentViewController:alert animated:YES completion:nil];

}

注:感谢 

https://juejin.im/post/5a952cd85188257a6e405b9d  

https://www.jianshu.com/p/e93d8f5ea466

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 前言: 目录:一、WKWebView基本介绍二、WKWebView新特性三、WebKit框架概览四、WKWebVi...
    麦穗0615阅读 4,874评论 0 8
  • 1、WKWebView 白屏问题WKWebView 自诩拥有更快的加载速度,更低的内存占用,但实际上 WKWebV...
    无名感恩阅读 6,406评论 0 3
  • WKWebView 是苹果在 WWDC 2014 上推出的新一代 webView 组件,用以替代 UIKit 中笨...
    Aiana阅读 10,085评论 1 8
  • 公司开始让做一个新iOS项目,由于苹果的更新需要每次发版本审核,没法像服务器一样实时更新,技术部就讨论出原生+HT...
    奶茶007阅读 5,742评论 16 9
  • 前段时间,煎饼的一位女性朋友跟我这样说到:每当我精心画完妆之后,都觉得自己上可闭月,下可羞花;在精心穿着打扮一番,...
    半夏十一阅读 8,972评论 7 50