ループã¨æ¡ä»¶åˆ†å²ã‚’ãƒãƒƒã‚µãƒªã™ã¦ãŸã‚‰ã€æ„外ã¨ã¾ã¨ã‚‚ãªã®ãŒã‹ã‘ãŸæ°—ãŒã™ã‚‹ã‹ã‚‰ã€çœ ã„å‹¢ã„ã§ç´¹ä»‹ã—ã¦ã¿ã‚‹ã€‚
http://github.com/umezo/umezone/blob/master/javascript/template.js
特徴
- 変数展開ã—ã‹ã‚µãƒãƒ¼ãƒˆã—ã¦ãªã„
- JSã«ã‚³ãƒ³ãƒ‘イルã—ã¦ã„ã‚‹
- JSã«ã‚³ãƒ³ãƒ‘イルã—ã¦ã‚‹ã®ã«ã‚¨ã‚¹ã‚±ãƒ¼ãƒ—ãŒå…¨ã考慮ã•ã‚Œã¦ãªã„
- テンプレートã¯JSãŒå®Ÿè¡Œã•ã‚Œã‚‹ãƒšãƒ¼ã‚¸ã®è¦ç´ ã®ä¸ã«æ›¸ã
- ã£ã¦ã„ã†ã‹ã‚³ãƒ¡ãƒ³ãƒˆã®ä¸ã«æ›¸ã
- Chromeã®æ‹¡å¼µã¨ã‹ã§ã‹ãªã‚Šä¾¿åˆ©
- 多分オブジェクトã®ãƒ—ãƒãƒ‘ティã¨ã‹é–¢æ•°å‘¼ã³å‡ºã—ã¯å‹•ãæ°—ãŒã™ã‚‹ãƒ»ãƒ»ãƒ»ã€‚
使ã„æ–¹
テンプレートã¯template.jsã‚’èªã¿è¾¼ã‚“ã§ã„るページã®HTMLä¸ã«ã‚³ãƒ¡ãƒ³ãƒˆã§åŸ‹ã‚è¾¼ã¿ã¾ã™ã€‚
<div id="block"> <!-- <div id="{{$id}}"> <header>{{$title}}</header> <p>{{$content}}</p> </div> --> </div>
区切り文å—ã¯ã‚³ãƒ¬ã§ã™ã€‚
{{$~}}
JSå´ã§ã¯ãƒ†ãƒ³ãƒ—レートãŒå…¥ã£ã¦ã‚‹è¦ç´ ã®Idを渡ã™ã¨ãã®ã¾ã¾ãƒ¡ã‚½ãƒƒãƒ‰ã«ãªã‚Šã¾ã™ã€‚
idãŒhogeãªã‚‰template.hoge();
var template = getTemplate(["block"]); var html = template.block({ id : 1 , title : "今日ã®ãŠã‹ãš" , content : "骨ã£ã“" });
テンプレートãŒå…¥ã£ã¦ã‚‹è¦ç´ ã¯ãŠå¥½ã¿ã§display:hiddenã—ãŸã‚Šã—ã¦ãã ã•ã„。
予期ã—ã¦ãªã„ã‘ã©å‹•ããã†ãªã‚‚ã®
<div id="cal"><!-- {{$sum(1,2)}} --></div>
>||javascript|
var t = getTemplate( [ "cal" ] );
var html = t.cal({
sum : function( a , b ){ return a + b; }
});
|
ã¾ã¨ã‚
æ¡ä»¶åˆ†å²ã¯ãªãã¦ã„ã„ã‹ã‚‰ã€ãƒ«ãƒ¼ãƒ—ã¨ãƒ•ã‚£ãƒ«ã‚¿ãŒæ¬²ã—ã„
タイムスタンプをã„れるã¨YYYY/MM/DDã§è¡¨ç¤ºã—ãŸã‚Šã¨ã‹å°æ•°ç‚¹åˆ‡ã‚Šæ¨ã¦ãŸã‚Šã¨ã‹ã€‚