问题:

1.前端模板引擎的应用场景在哪里?前端模板引擎当下也有很多,但是什么样的应用场景下会使用到,有点不太清楚,虽然也用过一些,但是还是不是有很好的定位,而且,js 渲染出来的内容不利于seo,怎么去合理的处理必要输出,和js 渲染的资源分配问题,求对这方面有比较深刻理解的童鞋,讲解一下!
2.前端mvc? 现在的前端mvc大多数用在single page 或者 webapp 的环境下,那若若的问下,比如说有一些前端交互的效果,但不是很复杂,是否可以使用mvc,会不会有点繁重呢? 

答:

以前我有一样的疑问,自从我写了——购物车页面。。。

用户会需要在购物车里对商品进行删除、改数量的操作。看似简单,其实不然。商品删除,就需要删除这一行。改数量,价格就会变更。再加上可能满299了需要送赠品,用户把商品数量右边的加号点点点,点满299元的时候,赠品就应该自动出现在购物车里,而且上面打着“赠品”的标签。
这些操作如果点一下就需要跳个页面,多讨厌啊。。如果用模版引擎+AJAX,用户也舒服,开发也舒服。

当前端的DOM操作复杂到一定程度时,你会发现有个模版引擎会非常方便。
当前端和后端的交换的数据结构复杂到一定程度时,你会发现拿着一个后台输出的对象直接渲染到前端模版更方便。
我现在在项目中用到前端模版引擎的除了购物车,还有一个就是地址簿,地址簿的操作要更复杂一点,因为是增删改查的全套操作,如果不用模版引擎,估计我会拼接字符串到疯……

JS渲染耗费的资源很少,IE6也能轻松搞定。

我觉得最主要的一点是: 模块引擎是拿数据来渲染模板生成页面(模块) 于是我们先写下一个模板,然后我们的任务就是操作数据了,而不是操作dom,dom交给模板引擎来统一刷新。 这样我们的工作就集中在业务逻辑上了,而处理业务逻辑就变成了处理业务数据(状态) js代码中不再混杂大量的dom操作代码,可以在更抽象的角度去处理业务,可以用更短的时间,写出更简洁,更容易维护的代码