Beetl3.0 是新的模板引擎,有很多特性和優化,比如,支持雙定界符和雙佔位符
<!--#
var a = [1,2,3];
-->
<html></html>
<script>
//#for(var i in a){
var js${iLP.index} = "${i}";
//#}
</script>
<body>
${a}
#{a}
</body>
比如,如上代碼可以配置雙定界符和雙佔位符
cfg.setStatementStart("<!--#");
cfg.setStatementEnd("-->");
cfg.setStatementStart2("//#");
cfg.setStatementEnd2(null);
cfg.setPlaceholderStart("${");
cfg.setPlaceholderEnd("}");
cfg.setPlaceholderStart2("#{");
cfg.setPlaceholderEnd2("}");
目前最難的這一部分基本完成了
雙佔位符可以有不同的解釋,比如${a} 輸出是a的值,#{a} 可能輸出一個“?”
雙定界符使得模板更能適應各種文本,比如html文本包含了xml和script片段,可以設計倆種定界符