一个很好的例子
wkwebview iOS下JS与OC互相调用,可以实时传递数据
按此例正确书写,一般可以达到调用的效果
主要说一下注意点
PS:我现在只做了JS调用原生,先说这个的,做了其他的额,再补充
- JS调用
window.webkit.messageHandlers.<name>.postMessage(<messageBody>)
与原生传递数据
其中messageBody没有参数的话,也要传null(与他人联调很不方便,这个东西耗费了我两个小时,切记切记)
name字段,方便的话直接设定成你想调用的OC方法名
这样在代理方法中的message.name,就是你想要调用的方法,可以方便的通过NSSelectorFromString(aSelectorName),直接调用方法,省去判断
JS调用方法name参数后面调用postMessage,不是其他的,也不是你想要调用的OC方法的方法名,这点应该是前端开发与安卓联调时候受到了影响。再次强调:参数没有的话也要写上null
上面例子中:viewWillDisappear中移除监听name的方法要写上,不然释放不掉
网友评论