10

我目前正在使用 Backbone 哲学,其中涉及到dust.js的模板样式。最近我遇到了 AngularJS,它使用自定义元素和属性扩展了 HTML 语法。

Backbone+dust.js 环境的缺点:

  • 升级组件非常耗时。
  • 模块规范和识别并不容易。

如果我将我的功能转移到 AngularJS 会有帮助还是感觉一样?

谁能向我解释这两个库之间的主要区别是什么,因为它们在某种程度上看起来很相似?

4

1 回答 1

10

dust.js 纯粹是一个模板模块。因此,它允许将 json 与模板组合以提供 html 输出。

Angular.js 是客户端框架,它允许将逻辑绑定到模板(您的页面)中定义的变量。

因此,使用dust.js,您负责决定何时通过模板运行json。通常,您在服务器(或客户端)上输入 json 并要求它呈现结果。

当模型(json)更改时,使用 angular.js,框架会根据需要重新渲染。该更改的触发器可能是用户操作(例如填写表单),也可能是由于从服务加载了一些新的 json。

如果你想要一个单页 JS 应用程序(想想 gmail),通常你会使用 angular.js。dust.js 可能更类似于具有多页面的传统方法,其内容由传入 json 驱动。

你甚至可以串联使用它们——服务器端渲染使用dust.js和angular.js中的动态客户端逻辑。

于 2013-11-15T22:47:04.857 回答