(最新干货)快速上手iOS OC与JS交互使用(JSContext篇)

混合开发(iOS与H5)混编的重要性不言而喻,一个移动端开发的了解前端开发是一个趋向,总之每个人都向往成为一个全栈工程师,废话不多说,直接上主题 JSContext非常方便,推荐使用,

(最新干货)快速上手iOS OC与JS交互使用(JSContext篇)_第1张图片

1:创建一个NSObject 名字为WCJSObject

一:WCJSObject.h  继承

WCJSObjectProtocol实现主要是用于H5页面调,方便调用写法如:本次介绍的主要是以goBack为例


(最新干货)快速上手iOS OC与JS交互使用(JSContext篇)_第2张图片
WCJSObjectProtocol实现

添加一个block,H5调goBack方法后回调

@property (nonatomic ,copy)void(^goBackBlock)()

二:WCJSObject.m

实现方法

-(void)goBack{

self.goBackBBlock();

}

2:在webview中监听js调取App的方法

a:首先导入头文件

#import “WCJSObject.h”

#import

实例化一个 contex

@property(strong,nonatomic)JSContext *contex;

b:然后在webViewDidFinishLoad中实现如下

//创建一个JSContext对象,通过webview获取到jscontext

self.contex = [webview valueForKeyPath:@"documentView.webView.mainFrame.javaScriptContext"];

//创建类对象

WCJSObject *jsObject = [WCJSObject new];

//实现回调

jsObject.goBackBlock = ^{

//在这里实现返回的代码即可

};

c:最后 将jsObject对象赋值给contex的listener中//重点:listener是和H5协商好的,只要一样就可以

self.contex[@"listener"] = jsObject;

到这里,完成了所有的App端的业务代码!

下边介绍H5如何调,很简单

//实现方法

function goBack() {

window.listener.goBack();//listener是和H5协商好的,只要一样就可以

}

//模拟一个按钮

结束语:在正确的道路上用笨方法,只要坚持,你就会成功!

如果您对这边文章有什么意见或者建议,请评论与我讨论

如果你觉得还不错的话 或者刚好帮到你~可以点个喜欢鼓励我哦

如果你想和我一起学习,请毫不吝啬的私信我吧

万水千山总是情,给个[爱心]关注行不行?

(最新干货)快速上手iOS OC与JS交互使用(JSContext篇)_第3张图片

你可能感兴趣的:((最新干货)快速上手iOS OC与JS交互使用(JSContext篇))