Ich versuche Eliom jetzt, um zu sehen, was ich damit machen kann. Ich möchte eine externe Javascript-Bibliothek von meinem Eliom-Client-Code aufrufen. Der Beispielcode ich versuche ist die folgende:Aufruf einer externen JS-Bibliothek von Eliom Client-Code
[%%client
let three_lib = Js.Unsafe.js_expr "THREE" in
let scene2 = Js.Unsafe.new_obj three_lib##.Scene [||] in
let init() =
(Firebug.console##log three_lib : unit);
(Dom_html.window##alert (Js.string "scene2 created") : unit) in
init()
]
Entspricht dem einfachen javascript:
var scene2 = new THREE.Scene();
function init() {
console.log(THREE);
window.alert("scene2 created");
}
init();
Ein einfacher Anruf Three.js von OCaml-Code. Nun bin ich mir der Syntax noch nicht zu 100% sicher, aber was ich beobachte, ist, dass THREE nicht definiert ist, weil dieser Code vor dem Laden von Three.js ausgeführt wird.
Wie kann ich entweder: 1) js-Dateien vor dem von js_of_ocaml; oder 2) Three.js in die generierte js-Datei aufnehmen; oder 3) andere Option?
Derzeit ist die Seite auf diese Weise erzeugt:
Eliom_tools.F.html
~title:"Main Page"
~js:[["lib";"three.min.js"]]
Html5.D.(body ....)
Danke im Voraus