問題タブ [js-of-ocaml]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ocaml - Dom 要素の属性を設定する方法
次のような呼び出しで td 要素を作成しました。
このオブジェクトに属性を設定したいと思います。私はこれを試しました:
しかし、私はエラーが発生します:
エラー: この式には型 Dom_html.tableCellElement Js.t
があります。メソッド setAttribute がありません
ocaml - js_of_ocaml メソッドを呼び出すには?
1 行の js_of_ocaml プログラムがあります。
次のエラーで失敗します。
このメソッドを呼び出すにはどうすればよいですか?
ocaml - ocamlbuild/ocamlfind によるライブラリのリンク
ojasmine というローカルに固定された OPAM プロジェクトがあり、これをライブラリとしてコンパイルして、test_tournabox という別のプロジェクト (最終的には JavaScript にコンパイル) で使用します。ただし、test_tournabox のコンパイルはリンク エラーで失敗しています。
ターゲット ojasmine.cma を指定して、次のように ojasmine をコンパイルします。
次に、次のようにインストールします。
ojasmine.cma が私のプロジェクト ディレクトリではなく、_build ディレクトリにあるのは奇妙に感じました。
出力は次のとおりです。
次に、cd
自分の tournabox プロジェクトに移動して、テスト スイートをビルドしてみます。
これはエラーで失敗します:
ojasmine.cma が実行可能ファイル test_tournabox.byte にリンクされていないようです。しかし、私はこれを手配するために ocamlfind への -linkpkg 引数を期待しています。私は何が欠けていますか?
編集: META ファイルは次のとおりです。
ocamlobjinfo は次のとおりです。
ocamlfind はそれを見ます:
ここにあります:
ここに ojasmine.ml があります:
そして ojasmine.mli:
curl - Js_of_ocaml : ocurl と str を呼び出すときにプリミティブがありません
HTTPリクエストを作成するためにパッケージcurlを使用しています(および正規表現を使用するパッケージstr)。私は自分のプロジェクトでファイルをコンパイルしていますが、問題はありません.file.byteをjs_of_ocamlでコンパイルすると、次のエラーが発生します:
js_of_ocaml --genprim foo.byte を無効にします。
生成された js ファイルをインクルードすると、Web コンソールに次のエラーが表示されます。 Uncaught ReferenceError: helper_curl_global_init is not defined
欠落しているプリミティブがあり、それがエラーの原因であることはわかっていますが、それを修正する解決策はありますか?