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方法下进行声明

你可能感兴趣的:(Vue项目 iOS调用JS方法报错找不到方法)