Как вызвать метод React (не реагировать-родной) из iOS? - PullRequest
0 голосов
/ 22 апреля 2019

там у меня есть webProject (использующий React), встроенный в WKWebView (iOS).

и я хочу вызвать функцию в React из iOS.Вот мой код iOS:

  func cameraClosed() {
        webPage.evaluateJavaScript("cameraClosed") { (res, error) in
            if error == nil{
                print("invoke successed")
            }else{
                print("invoke failure")
                print(error)
            }
        }
    }

и мой код React:

  cameraClosed(str) {
    console.log("camera closed")
    alert("camera closed")
}

, но я не знаю, где разместить этот код JavaScript.некоторые говорили, что:

   <script>
        function myFunction('yourParameter') 
        {
            // do your javascript operation
            //alert("my Hello World!");
            return value;
        }
    </script>

, но в реакции нет реального файла .html.и там, когда я пытался вызвать какую-то функцию из iOS, я получил ошибку:

Optional(Error Domain=WKErrorDomain Code=4 "A JavaScript exception occurred" UserInfo={WKJavaScriptExceptionLineNumber=1, WKJavaScriptExceptionMessage=ReferenceError: Can't find variable: cameraClosed, WKJavaScriptExceptionColumnNumber=13, WKJavaScriptExceptionSourceURL=http://192.168.199.203:3000/?p=Test%20Project%202, NSLocalizedDescription=A JavaScript exception occurred})

Может ли кто-нибудь сказать мне правильный способ вызова функции js из iOS?

...