Я пытаюсь Eliom прямо сейчас, чтобы посмотреть, что я могу с ним сделать. Я хочу вызвать внешнюю javascript-библиотеку из моего клиентского кода eliom. Пример кода я пытаюсь следующий:Вызов внешнего Js lib из клиентского кода Eliom
[%%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()
]
Эквивалент простой JavaScript:
var scene2 = new THREE.Scene();
function init() {
console.log(THREE);
window.alert("scene2 created");
}
init();
Простой вызов Three.js из OCaml кода. Теперь я не уверен на 100% синтаксиса, но я наблюдаю, что THREE не определено, потому что этот код выполняется до загрузки Three.js.
Как сделать так: 1) включить файлы js перед тем, который был создан js_of_ocaml; или 2) включать Three.js в сгенерированный файл js; или 3) другой вариант?
В настоящее время страница генерируется таким образом:
Eliom_tools.F.html
~title:"Main Page"
~js:[["lib";"three.min.js"]]
Html5.D.(body ....)
Спасибо заранее