JavaScript模板仅对将小项目插入DOM有用吗?

我最近遇到了Javascript模板,并且对此非常感兴趣.

我正在使用MVC模式构建大型PHP应用程序.模板由相当出色的Twig处理.

我最近遇到了javascript implementation of twig.

我也阅读了关于使用javascipt模板引擎的quite a bit.

现在,在我的应用程序中,该应用程序将为标准请求生成一个完整页面,作为没有JavaScript的用户的后备.对于AJAX请求,它可以生成页面的内容部分(没有< head>,< body>等).

当前,ajax响应对象只是呈现的HTML内容,然后将其插入DOM.

我是否应该返回包含编译的javascript模板和要插入到模板中的对象的响应对象?这样做有什么好处?

从我看过的帖子中,javascript模板只是代表页面一小部分的小片段,例如,在用户提交博客的那一刻显示评论.

javascript模板仅可用于在页面中插入此类小的“片段”吗?

解决方法:

我最近的一个项目引起了“客户端模板发烧”,我们对每个模板都使用了笨拙的东西.

对于我使用的每个模板库(两个或三个),您收到的错误消息都不太好.如果您有一个处理大量数据的巨大模板,您会很快发现u.foo为null或对象错误消息越来越令人沮丧.

我选择的最佳实践是:

>如果它是很少加载的模板,则返回完整的HTML片段(来自服务器).如果您只在页面上加载一次HTML,那么您最好将其向下发送,对吗?这也鼓励您将逻辑保持在服务器可能所属的服务器上.
>将客户端模板用于小的重复模板.您的博客评论示例可能是一个很好的例子.当我的客户端模板很小(小于10行)时,我找到了最大的成功
>使用无逻辑的模板引擎.模板中允许的逻辑越多,它们越难读取/维护.另外,某些逻辑可能应该在您的业务层中,而不是在某些JavaScript模板中.换句话说,它们迫使您将演示文稿与逻辑分开(很好).

PS:客户端和服务器端模板都可以使用相同的模板引擎是很酷的.这将使您项目上的开发人员的工作效率更高.

上一篇:c-导出模板功能


下一篇:c-为什么std :: condition_variable没有按锁类型进行模板化?