4.JS调⽤Oc⽅法,如何⽀持 多参数、多类型 调⽤
⾸先,我们要讲⽬标Class的forwardingInvocation:⽅法替换成我们⾃⼰的实现TTPatch_Message_handle,
然后通过替换⽅法的⽅式,将⽬标⽅法的IMP替换为msg__objc_msgForward,直接开始消息住转发,这样直接通过消息转发最终会运⾏到我们
的TTPatch_Message_handle函数中,在函数中我们可以拿到当前正在执⾏⽅法的invocation对象,这也就意味着我们可以拿到当前调⽤⽅法的全部信息,并且可以操作以及修改。我们也是通过这个⽅法来实现,返回值类型转换。返回值类型转发这⾥涉及到
然后通过替换⽅法的⽅式,将⽬标⽅法的IMP替换为msg__objc_msgForward,直接开始消息住转发,这样直接通过消息转发最终会运⾏到我们
的TTPatch_Message_handle函数中,在函数中我们可以拿到当前正在执⾏⽅法的invocation对象,这也就意味着我们可以拿到当前调⽤⽅法的全部信息,并且可以操作以及修改。我们也是通过这个⽅法来实现,返回值类型转换。返回值类型转发这⾥涉及的细节⽐较多,暂时只说⼀下最好的⼀种解决⽅案。
《--------------------Github地址----------------》
上传⼀张Demo动态图
reactnative开发
TTPatch2.gif
感兴趣的读者可以下载玩⼀玩.欢迎提出宝贵意见

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。