AngularJS: 客户端接收的 HTML 本身是模版,用 JavaScript 去解析模版,展示 freemaker: 服务器发送内容之前解析模版,客户端直接展示 目前看来 AngularJS 优势是数据的绑定,我不认为它 mvc 模式是什么亮点,优点是数据的绑定和更新需要的代码非常少。 也就是讲 AngularJ ..

传统模版引擎(以freemaker为例子) 比起 AngularJS 缺的是什么?

本贴最后更新于 2101 天前,其中的信息可能已经时移世改

AngularJS: 客户端接收的 HTML 本身是模版,用 JavaScript 去解析模版,展示

freemaker: 服务器发送内容之前解析模版,客户端直接展示

目前看来 AngularJS 优势是数据的绑定,我不认为它 mvc 模式是什么亮点,优点是数据的绑定和更新需要的代码非常少。

也就是讲 AngularJS 核心解决的问题是 ‘数据和具体用于显示它(数据)的 HTML’ 的绑定, 并且这种绑定是(持续的)动态的关联。

而 AngularJS 可以解析 HTML 模版的功能(它使用{{ }} 来类似对应 freemaker 的 ${})只是为了实现这种绑定的方便性,

如果 AngularJS 提供另外的方式,纯 JavaScript 代码配置,填充数据(根据 id 操作 dom 数据),其实也可以完成此功能吧,当然这种方式比较费劲和不直观。

我只是认为 AngularJS 可以省去 解析视图的功能,从而我认为 AngularJS 的核心不是解析视图

那么对于 freemaker 这种模版引擎,为什么不能补充 AngularJS 的优势数据绑定能力呢,

模版引擎大多数的核心在于生成视图,为什么不去针对数据绑定做一些文章呢?可以附带一个 JavaScript 做这样功能,也可以生成 JavaScript 完成这样的功能

总之,总是有办法搞出来的。

之所以对 AngularJS 有点疑问是,所有的功能都在前段执行,性能会有一定的问题,如果能在后台生成相应的功能,也许会更好吧。

  • JavaScript

    JavaScript 一种动态类型、弱类型、基于原型的直译式脚本语言,内置支持类型。它的解释器被称为 JavaScript 引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在 HTML 网页上使用,用来给 HTML 网页增加动态功能。

    426 引用 • 1013 回帖 • 883 关注
8 回帖   
请输入回帖内容...
  • 88250

    针对视图的数据和服务端层“服务层”的数据不是一样的,我觉得无论视图在客户端绑定数据完成渲染(to HTML)还是在服务端,要绑定的数据还是要转化自服务层。

    在客户端完成渲染对服务器性还是比较有好处的,毕竟省了解析模版、HTML 化的过程。

    1 回复
  • zonghua        

    给个示例给我好吗,FreeMarker 调用 Java 静态方法。官方文档没有示例看不懂。。。

    1 回复
  • 88250      

    不是所有方法都可以调用的吧,静态方法我没有试过,只用过一些简单的方法,比如集合的 size()

    1 回复
  • zonghua        

    那我要怎么写啊,比如这里的“回复时间 2 年前”

    1 回复
  • 88250      
    2 回复
  • zonghua        

    代码可真多啊

  • zonghua        

    可以用 AOP 去把他们的时间都改了吗

    1 回复
  • 88250      

    呃,看你具体代码怎么组织了,我觉得都可以。另一个思路是在客户端用 JS 刷。

请输入回帖内容 ...