Vue项目 iOS调用JS方法报错找不到方法

项目中需要与H5进行交互,但是在 iOS调用 js方法时出现问题。一直报错找不到js方法。
一开始以为是移动端中注入的方法 和 js方法名不对。经排查,是一致的。
然后排查 注入方法(通过- (void)evaluateJavaScript:(NSString *)javaScriptString completionHandler:(void (^ _Nullable)(_Nullable id, NSError * _Nullable error))completionHandler;注入)也没有任何问题。

后来发现前端是使用的vue框架,而直接将js方法写在methods中,这样造成这个交互js方法是局部的,无法被ios端找到。

解决办法:将iOS需要调用的js方法在createdmounted方法中暴露在window下,变成全局方法。
window.printText = this.printText()

如果到这里还不行或者有崩溃,请在window.onload方法下进行声明

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容