热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

webView换成WKWebView后,js注入self.jsContext应该怎么处理才行?

工程之前用webView封装网页,后面想换成WKWebView,结果一换就出问题了。

工程之前用webView封装网页,后面想换成WKWebView,结果一换就出问题了。



之前用webView与js交互

1
2
3
4
5
6
7
8
9
10
11
- (void)webViewDidFinishLoad:(UIWebView *)webView {

   

    // 设置JavascriptContext上下文

    self.jsCOntext= [webView valueForKeyPath:@"documentView.webView.mainFrame.JavascriptContext"];

    //将bsg对象指向自身//网页端设置点击方法:bsg.call(),call()方法由bsg对象调用,此处将自身设置为bsg对象,用来调用本地方法而非网页方法

    self.jsContext[@"ios"] = self;

    self.jsContext.exceptiOnHandler= ^(JSContext *context, JSValue *exceptionValue) {

        context.exception = exceptionValue;

        NSLog(@"异常信息:%@", exceptionValue);

    };

}

想把webView替换成WKWebView,于是这样写:



1
2
3
4
5
6
7
8
9
10
11
12
13
-(void)webView:(WKWebView *)webView didFinishNavigation:(WKNavigation *)navigation

{

   

    // 设置JavascriptContext上下文

    self.jsCOntext= [webView valueForKeyPath:@"documentView.webView.mainFrame.JavascriptContext"];

   

    self.jsContext[@"ios"] = self;

    self.jsContext.exceptiOnHandler= ^(JSContext *context, JSValue *exceptionValue) {

        context.exception = exceptionValue;

        NSLog(@"异常信息:%@", exceptionValue);

    };

   

}

1
self.jsCOntext= [webView valueForKeyPath:@"documentView.webView.mainFrame.JavascriptContext"];

这里崩了,想问下WKWebView应该怎么设置才行,没学过js交互,不知道该怎么更改合适。


   



推荐阅读
author-avatar
手机用户2502863643
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有