Skip to content

FPJack/ZLBridge-iOS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ZLBridge

CI Status Version License Platform

说明

ZLBridge是为iOS的WKWebview和JS数据交互时提供更简单方便的小工具组件,可配合H5端使用ZLBridge-JS库来数据交互,也可选择原生本地注入JS代码,H5无需任何集成操作。目前已支持的平台有
ZLBridge-iOS
ZLBridge-Android
ZLBridge-JS
ZLBridge-flutter
ZLBridge-RN

安装

pod 'ZLBridge' //如果安装失败,pod update更新一下

H5端window.zlbridge初始化

#import <ZLBridge/WKWebView+ZLBridge.h>

//YES:原生注入本地js脚本初始化zlbridge,NO:由H5初始化zlbridge
[self.wkwebView initBridgeWithLocalJS:YES];

H5初始化zlbridge

 //导入一次后也可以通过window.zlbridge拿zlbridge对象
 var zlbridge = require('zlbridge')

原生与JS交互

JS调用原生test事件

无参数

window.zlbridge.call('test',(arg) => {

});

有参数参数

window.zlbridge.call('test',{key:"value"},(arg) => {

});

原生注册test事件

[self.wkwebView registHandler:@"test" completionHandler:^(id  _Nullable obj, JSCallbackHandler  _Nullable callback) {
    //YES代表JS只能监听一次回调结果,NO可以连续监听
    callback(@"js异步调用:这是原生返回的结果1000!",YES);
}];

原生调用js

原生调用JS的jsMethod事件

[self.wkwebView callHandler:@"jsMethod" arguments:@[@"这是原生调用js传的值"] completionHandler:^(id  _Nullable obj, NSError * _Nullable error) {
}];

js注册jsMethod事件

window.zlbridge.register("jsMethod",(arg) => {
     return arg;
 });

或者

window.zlbridge.registerWithCallback("jsMethod",(arg,callback) => {
   //ture代表原生只能监听一次回调结果,false可以连续监听,默认传为true
    callback(arg,true);
 });

通过本地注入JS脚本的,H5可以监听ZLBridge初始化完成

document.addEventListener('ZLBridgeInitReady', function() {
    consloe.log('ZLBridge初始化完成');
},false);

移除ZLBridge

[self.wkwebView destroyBridge];

!!! iOS传给JS的值对象有NSNumber,NSString,NSDictionary,NSArray,NSSet

Author

范鹏, 2551412939@qq.com

License

ZLBridge is available under the MIT license. See the LICENSE file for more info.

About

ZLBridge是为iOS的WKWebview和JS数据交互时提供更简单方便的小工具组件,使用简单,对第三方库已开发好的WKWebView也可支持,可配合H5端使用ZLBridge-JS库来数据交互,也可选择原生本地注入JS代码,H5无需任何集成操作。目前已支持的平台有ZLBridge-Android,ZLBridge-JS,ZLBridge-flutter,ZLBridge-RN

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors