包装一个接收JS对象的OCaml函数(记录)

时间:2016-06-17 00:10:02

标签: js-of-ocaml ocsigen

我想在OCaml中编写一个非常简单的函数,并将其包装成jsGet来生成JS函数js_of_ocaml,这样jsGet可以获取JS对象(或记录)作为输入。

我尝试了以下代码:

\\ in Home.js
function testJsGet () {
    var input = {field_1: 5, field_2: 6};
    var output = jsGet(input);
    document.getElementById("result").value += output;
}

wrap.ml

type t =
  < field_1: int Js.prop;
    field_2: int Js.prop
  > Js.t

let () =
  Js.Unsafe.global##.jsGet := Js.wrap_callback
      (fun (r:t) -> r##.field_1);

wrap.ml编译得很好,但是,运行Home.js会返回undefined作为输出。

有谁知道如何纠正这个问题?

1 个答案:

答案 0 :(得分:0)

删除下划线。请参阅HTML5 specification

上的方法名称和下划线