Haxeでライブラリをつかう


jQuery や CreateJS をライブラリとして使うには haxelib をセットアップする必要があります。

$ sudo mkdir -p /usr/lib/haxe/lib
$ sudo haxelib setup

haxelib を格納するディレクトリを作成して、setup コマンドを実行。
haxelib の場所を聞いてきますが、デフォルトのままならエンター。
これで準備完了。

jQuery ライブラリがあるか検索してみる。

$ haxelib search jQuery

いくつかでてきますが、最新のjQuery (確認時 2.0.3)を使えるっぽい jQueryExtern を使ってみます。

$ haxelib info jQueryExtern

で情報がでてくるので github は軽くのぞいておきます。
http://github.com/andyli/jQueryExternForHaxe

どうやら jQuery のインターフェイスの定義?をしているだけのようで、jQuery 本体は自分で用意するらしいです。
Haxe のライブラリはこういうものなんですかね。
定義されていないJSライブラリがあった場合どうしたらいいんだろ…

$ haxelib install jQueryExtern

いろいろ落ちてきたら準備完了。
こんな感じの Main.hx を作成して jQuery をたたいてみる。

Main.hx
import jQuery.*;

class Main {
    static public function main():Void {
        trace(new JQuery('body'));
    }
}

jQueryExtern の wiki には CDN の使用例が乗っているので、その通りにします。

index.html
<html>
<head>
<title>Haxe JS</title>
</head>
<body>

<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>
<script type="text/javascript" src="main.js"></script>

</body>
</html>

ビルドファイルを下記のようにして haxe compile.hxml する。

-js main.js
-lib jQueryExtern
-main Main

HTML を開いてみるとコンソールに jQuery がでてました。

利用できる haxelib はここで確認できます。
http://lib.haxe.org/