调用现有 JSFunction 时来自 WKWebView 的 WKErrorDomain 错误 4

WKErrorDomain error 4 from WKWebView when calling existing JSFunction

无论我做什么,我都无法在不产生错误的情况下成功调用此js函数。

<script type="text/javascript">
    function getmessage() {
        //$('#discussion').append('<li>dummy</li>');
    }
    $(function () {
        var chat = $.connection.chatHub;
        chat.client.broadcastMessage = function (message) {
            var encodedMsg = $('<div />').text(message).html();
            $('#discussion').append('<li>' + encodedMsg + '</li>');
        };
        $.connection.hub.start().done(function () {
            $('#sendmessage').click(function () {
                chat.server.send($('#message').val());
            });
        });
    });
</script>

错误:WKErrorDomain代码; 4

我已经确保我继承了 WKNavigaitonDelegate,将视图设置为委托并从 didFinishNavigation 调用它

请注意,我可以从我的 swift 代码中正常执行新的 js 块,没有任何问题,但是在调用该现有函数时,它不起作用。

您可以使用 Safari Web Inspector 获取有关问题所在的更多信息。

您可以通过确保开发者菜单已启用来启用它。

模拟器启动您的应用程序后,您可以转到Developer->Simulator->[Your Page]。打开 Web Inspector 后,您可以刷新 Web 视图,您应该会看到 "console error"。这应该能让您更深入地了解您的 "JavaScript exception".