ZLBridge是为iOS的WKWebview和JS数据交互时提供更简单方便的小工具组件,可配合H5端使用ZLBridge-JS库来数据交互,也可选择原生本地注入JS代码,H5无需任何集成操作。目前已支持的平台有
ZLBridge-iOS
ZLBridge-Android
ZLBridge-JS
ZLBridge-flutter
ZLBridge-RN
pod 'ZLBridge' //如果安装失败,pod update更新一下#import <ZLBridge/WKWebView+ZLBridge.h>
//YES:原生注入本地js脚本初始化zlbridge,NO:由H5初始化zlbridge
[self.wkwebView initBridgeWithLocalJS:YES];H5初始化zlbridge
//导入一次后也可以通过window.zlbridge拿zlbridge对象
var zlbridge = require('zlbridge')window.zlbridge.call('test',(arg) => {
});window.zlbridge.call('test',{key:"value"},(arg) => {
});[self.wkwebView registHandler:@"test" completionHandler:^(id _Nullable obj, JSCallbackHandler _Nullable callback) {
//YES代表JS只能监听一次回调结果,NO可以连续监听
callback(@"js异步调用:这是原生返回的结果1000!",YES);
}];[self.wkwebView callHandler:@"jsMethod" arguments:@[@"这是原生调用js传的值"] completionHandler:^(id _Nullable obj, NSError * _Nullable error) {
}];window.zlbridge.register("jsMethod",(arg) => {
return arg;
});或者
window.zlbridge.registerWithCallback("jsMethod",(arg,callback) => {
//ture代表原生只能监听一次回调结果,false可以连续监听,默认传为true
callback(arg,true);
});document.addEventListener('ZLBridgeInitReady', function() {
consloe.log('ZLBridge初始化完成');
},false);[self.wkwebView destroyBridge];ZLBridge is available under the MIT license. See the LICENSE file for more info.