[英]Javascript template system - PURE, EJS, jquery plugin?
有人用过javascript模板系统吗? 我曾经使用嵌入JavascriptMVC的那个,但我现在正在进行服务器端开发,所以我想要一个更简化/更薄的版本..
我发现2. 1是EJS,这是JavascriptMVC中包含的部分
另一个是Pure-你可以用jquery
http://beebole.com/pure/index.html
谁有任何经验,或者还有其他我找不到的东西? 也许是一个jquery类型的插件或者什么..
基本上我需要在runtine中的javascript中替换部分HTML文档,而无需调用服务器。
但我的html替换代码需要保存在外部文件中,而不是嵌入在js中
任何帮助真的很感激
谢谢
HAML咖啡。
结合两种最好的元语言。
嘿,我用了一两次,这很简单。 这是来自编写jquery的人。
这是在jQuery中为Smarty模板语言实现的。 http://www.balupton.com/sandbox/jquery-smarty/demo/
一个令人印象深刻的功能是支持动态更新。 因此,如果更新模板变量,它将更新模板中使用该变量的任何位置。 很漂亮。
您还可以使用onchange事件挂接到变量更改。 因此,当说变量“page”改变时,表示效果或AJAX很有用;-)
如果您有任何机会使用jQuery框架,我可以向您推荐一个名为jQote的插件。 有些人拿走了John Resig的引擎并将其打包成一个插件,这样就可以轻松完成javascript模板操作。
http://aefxx.com/jquery-plugins/jqote
干杯!
JQuery-HAML很好。
我广泛使用了EJS。 来自Rails的背景,它完全符合我的需求,因为它与ERB非常相似。
我推荐它。 它正在积极维护,开发人员反应迅速。 此外,在我运行的基准测试中,它的速度非常快。 我正在将它用于iPhone / Android的移动网站。
对于其他一些人,请查看此博客文章: http : //www.viget.com/extend/benchmarking-javascript-templating-libraries/
这是一个独立的定制解决方案,我写的非常小,模仿Prototype的模板系统 :
var templater = function(template, tokens, tokenIdentifier) {
tokenIdentifier = tokenIdentifier || "$";
// Decode HTML encoded template tokens %7B -> {, %7D -> }
template = template.replace(
new RegExp("\\" + tokenIdentifier + "%7B(\\w+)%7D", "gi"),
tokenIdentifier + "{$1}"
);
for ( var i in tokens ) {
if ( tokens.hasOwnProperty(i) ) {
template = template.replace(
new RegExp("\\"+tokenIdentifier+"\\{"+i+"\\}", "g"),
tokens[i]
);
}
}
return template;
};
用法:
templater("Hi, my name is ${name}", {name: "Bobo the Clown"});
// The token identifier defaults to $, but can be changed arbitrarily
templater("#{title} #{surname} #{verb} #{noun}", {title: "Dr.", surname: "Amazing", verb: "packed", noun: "sand"}, "#");
输出:
Hi, my name is Bobo the Clown
Dr. Amazing packed sand
我同意Jage。
http://ejohn.org/blog/javascript-micro-templating/非常简单,实施起来很快。 您无需做大量工作即可获得良好的结果。
看看hacktl.js http://code.google.com/p/hacktl/ 。 轻巧简单
到目前为止, Mustache.js对我来说效果很好。 它也适用于许多服务器端语言(Ruby,Python,Clojure等),因此您可以在多个上下文中使用它。
如果您使用的是Script#,您可能需要考虑SharpTemplate ,这是一种强类型,超高效的HTML模板引擎。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.