ファイルを Javascript にコンパイルしてブラウザーで実行する場合は、Mithril を必要とする必要はありません。
スクリプトの前に追加されていることを確認してください。
例えば:
# file.ls
element = document.get-element-by-id 'example'
m.module element app
次に実行しますlsc -c file.ls
// file.js
(function() {
var element = document.getElementById('example');
m.module(element, app);
}).call(this);
これは、Mithril 変数への参照を含む通常の JS ファイルになりました。それらを HTML にリンクするときは、このことを覚えておく必要があります。
<script src='https://cdnjs.cloudflare.com/ajax/libs/mithril/0.1.34/mithril.js'></script>
<script src='file.js'></script>
ミスリルが先に来ることが重要だ。
Mithril を require したい場合は、ブラウザーの外で使用するために、require ステートメントを少し再調整する必要があります。
Mithril ソースの34 行目を見ると、それm
が単なるローカル関数であることがわかります。次に、1066 行目m
で、存在する場合はグローバル変数を作成しようとしますwindow
。Node/IO.js では機能しないため、代わりに に値をアタッチしますmodule.exports
。
これは、によって返される値を使用する必要があることを意味しますrequire
。
m = require 'mithril.js'
m.module! # works!