前端模板引擎和前端mvc应用场景~

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

最近也在想这些,在看一些框架的源码。
可以简单的对比下JQUERY,Backbonejs,emberjs。
先说说第一个问题,我之前尝试过是写一个论坛小程序,因为涉及到SEO的问题,所以帖子的内容是直接在HTML里面输出的,但是评论是之后通过JS渲染出来的,如果让我现在重新写的话,我会用Backbonejs来写,http://www.quora.com/Backbone-js-1/Is...有个讨论Backbonejs的MVC的,Backbonejs提供了Models, Collections, Views。Models 用来创建数据,校验数据,绑定事件,存储数据到服务器端;Collections 包含你创建的 functions;Views 用来展示数据。如此这般,在前端也做到了数据和显示分离。
第二个问题,“前端交互”如果只是修改DOM而且代码量不是很大的话,觉得是JQUERY最适合的事情,也不一定要用MVC的框架不可。MVC也只是在相对较多代码的情况下才有优势。
入门中,欢迎讨论。

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

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

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

JS渲染耗费的资源很少,IE6也能轻松搞定(我用的是handlebar)。

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

module和view层分离,前端开发和后端开发可完全分离,各司其职资源最大话利用

宣传栏