求助!!!!!

qq_33674164 2017-06-22 11:21:52
最近刚接手新公司的项目,他们用的是H5混合开发模式,最近突击了一下,还是有些问题


- (void)injectJavaScriptToHTML {
_JSContext = [self.webView valueForKeyPath:@"documentView.webView.mainFrame.javaScriptContext"];
_JSContext.exceptionHandler = ^(JSContext *context, JSValue *exceptionValue) {
context.exception = exceptionValue;
NSLog(@"异常信息:%@", exceptionValue);
};

[self evaluatingJavaScript];
}

- (void)evaluatingJavaScript {
[self evaluatingJavaScriptForResource:@"workplat" ofType:@"js"];
}

- (void)evaluatingJavaScriptForResource:(NSString *)resource ofType:(NSString *)type {
NSBundle *bundle = [NSBundle bundleForClass:[FBJavaScriptInterface class]];
NSURL *url = [bundle URLForResource:@"FBWebViewController" withExtension:@"bundle"];
NSString *jsPath = [[NSBundle bundleWithURL:url] pathForResource:resource ofType:type];
NSString *jsStr = [NSString stringWithContentsOfFile:jsPath encoding:NSUTF8StringEncoding error:nil];
[self.webView stringByEvaluatingJavaScriptFromString:jsStr];
}

- (void)setupJSOpenWebView {
__weak FBJavaScriptInterface *safeSelf = self;
self.JSContext[@"openWindow"] = ^(NSString *url, BOOL showTopMenu, BOOL showCloseButton, BOOL showBackButton, NSString *title, NSString *func_name)
{
这个方法不执行!!!!
}

};
}

大概就是这样,基本的初始化应该没问题的,就是像这样的调用方法不执行,方法名和js里的一样的,可能会是什么原因呢 声明safeself的那行代码是走的
...全文
204 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_33674164 2017-06-22
  • 打赏
  • 举报
回复
里面想打印参数但是不执行这个方法
jian0528yi 2017-06-22
  • 打赏
  • 举报
回复
可以先只传一个参数,确定是否执行,如果执行则有可能是参数传错了 前端调用方法时,可以alert下,确定执行了该方法

29,027

社区成员

发帖
与我相关
我的任务
社区描述
主要讨论与iOS相关的软件和技术
社区管理员
  • iOS
  • 大熊猫侯佩
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧