プラグイン名
MinusMORプラグイン
このプラグインができること
- RJSテンプレート(Ajaxなどバックグラウンド通信用のJavaScript用テンプレート)でJavaScript+ERBだけ記述できるようになる
- RJSテンプレートがごちゃごちゃになるRuby部分を除くことで、JavaScriptなどが書きやすく、かつ見やすくなる
- prototypeまたはjQuery(未確認)と組み合わせて使うことが前提
- 実際にAjaxもののシステムを書いてみればわかるけど、ノーマルRJSファイルでは、Ajaxばりばり動かすようなシステムの場合、JavaScriptコードがとてもじゃないけど読めない。読むのが嫌になる。
- このプラグインを使うと、JavaScriptそのままなので非常に見やすく、部分的にERBを使えばテンプレートの恩恵も受けられる。
- MiusRとMinusMORというのがあるけど、どっちがどう違うのかは「知らない」(たぶんMinusMORはMinusRを内包している)
- 元々のノーマルRJSファイルとしての機能も、.ejsファイルとして使える。
ちょー簡単な使い方
※まだ試してないので、間違えていたらこのwiki書き換えてね
でインストールするだけで、今まで.rjsには
page << 'if (someClientSideVariable) {'
page['a'].replace_html :partial => 'thing'
page << '} else {'
page['b'].replace_html :partial => 'thong'
page << '}'
こう書いていたものを
if (someClientSideVariable) {
$('a').update(<%=js render(:partial => 'thing') %>);
} else {
$('b').update(<%=js render(:partial => 'thong') %>);
}
こう書けばいいようになる。
また、このプラグインを使うと.rjsファイルにはRuby構文が書けなくなるので、今まで通りの.rjsを使いたい場合は、拡張子を.ejsにすれば良い。
(ホントか?<自分)
公式ページ
※参考
日本語解説ページ
外国語解説ページ
のうはう
- jQueryでうまく動いてくれるのかな?(未確認)
コメント
最終更新:2008年08月21日 18:05