DukeScript の「ネイティブ メソッド」呼び出しがどのように機能するかを理解するのに苦労しています。特に、@JavascriptBody アノテーションに body が指定されていないもの。例:
@JavaScriptResource(value = "userEntryComponent.js")
public final class UserEntryWidget {
private UserEntryWidget() {
}
@JavaScriptBody(args = {}, body = "")
public static native void registerComponent();
}
「registerComponent()」メソッドはどこで定義されていますか? ノックアウトには、「ko.components.register」と呼ばれる JavaScript 関数があります。したがって、「registerComponent」は「ko.components.register」の一種のラッパーでなければなりません。
本文のないネイティブ メソッド呼び出しの別の例を次に示します。
@JavaScriptResource("jquery-1.11.0.min.js")
public class JQuery {
@JavaScriptBody(args = {},body="")
public static native void init();
}
では、この場合、「init()」とは何でしょう? それはJavaメソッドですか、それともJavaScript関数ですか?