Javascript automation WKNavigationDelegate使用Objective-C桥(JXA)

Javascript automation WKNavigationDelegate使用Objective-C桥(JXA),javascript-automation,Javascript Automation,我正在尝试为WKWebView创建WKNavigationDelegate,但无法调用决策处理程序。有人知道怎么做吗 ObjC.registerSubclass({ 名称:“测试”, 方法:{ “webView:DecisionPolicyFornavigationAction:decisionHandler:”:{ 类型:[“void”、[“id”、“id”、“id”]], 实现:函数(wv、navigationAction、decisionHandler){ decisionHandler(

我正在尝试为WKWebView创建WKNavigationDelegate,但无法调用
决策处理程序
。有人知道怎么做吗

ObjC.registerSubclass({
名称:“测试”,
方法:{
“webView:DecisionPolicyFornavigationAction:decisionHandler:”:{
类型:[“void”、[“id”、“id”、“id”]],
实现:函数(wv、navigationAction、decisionHandler){
decisionHandler($.WKNavigationActionPolicyAllow);
返回;
}
}
}
});
var delegate=$['test'].alloc.init;
webView.navigationDelegate=委托;
代码一直工作到阻止导航操作,但未调用
decisionHandler

在控制台中,我得到了日志:

未调用传递给-[test webView:DecisionPolicyFornavigationAction:decisionHandler:]的完成处理程序
将类型从“id”更改为“block”或“function”不起作用。

我会添加一条注释,但会造成混乱,因此规则禁止新手不回答(?)。向注册中添加
协议:['WKNavigationDelegate']
是否有帮助? 正在调用您的方法,$.WKNavigationActionPolicyAllow显示为being==1,但该协议可能会帮助JSC进行类型推断