前の記事 «:PHPで書かれたメジャーなCMSリスト
次の記事 »:ファイルをデスクトップに保存しない

JavaScriptで動くテンプレートエンジン:JSmarty

2006年08月01日

スポンサード リンク
Thousand Years - JSmartyとは?
JSmartyはJavaScriptで動くテンプレートエンジンです。PHPにSmartyっていうテンプレートエンジンがあります。それのぶっちゃけいってクローン(完全ではないですが…)になります。なので利用するメソッドやプロパティととかもそんままでSmartyのテンプレートがそんまま利用できます(たぶん)あと当然ながらプラグインとかも対応しています。

JavaScriptで動くテンプレートエンジン、JSmarty。
次のような使い方で、Smartyとほぼ同様に動作するそうです。

■テンプレート'foo.tpl'
{$foo}
■コード
var render = new JSmarty;
render.assign('foo','Hello World!!');
render.display('foo.tpl');
■結果
Hello World!!

これは、JavaScript で、動的にHTML部品を作ってインタフェースを構築する際に便利そうです。
JSmartyのような仕組みを使わない場合、動的にHTML部品を作ってインタフェースを構築するには次の方法があります。

・document.createElement とかで要素を動的作成&追加していく方法
・innerHTMLで直接HTMLを入れ込んでしまう方法

document.createElementの場合はソースは綺麗になりますが、HTMLの変更が容易ではなかったり、後々分かりにくいコードになってしまいます。
innerHTMLで直接div等に入れこんでしまう場合もコードとHTMLが混在してしまって分かりにくいソースになりがちです。

小さなプログラムではこれらの方法も問題ないと思いますが、ある程度のコード量になってくると、PHP同様、こういったJSmartyのようなテンプレートエンジンを使った方が便利そうですね。
Smartyのようにテンプレートはテンプレートで分けておくことで規模が大きくなっても見栄えの変更は容易になり、ソースも綺麗に分かりやすくできそう。

どの程度使えるのか、試していませんが面白い試みだと思います。

スポンサード リンク

投稿者 KJ : 2006年08月01日 12:07 | ブックマークに追加する Subscribe with livedoor Reader
間違いの指摘をしていただける方はメールでお願いします


本を執筆しました。