我想知道如果前端使用AngularJS作为js框架,模板引擎是否需要单独使用Handlebars? ...在我看来,模板引擎功能可以使用 AngularJS 本身来完成!
最佳答案
你是对的,Handlebars 和 Angular 放在一起是毫无用处的。
Handlebars 和 Angular 是完全不同的东西。
Handlebars 是一个模板引擎。您编写一个精美的模板字符串,给它一个 JSON 对象,然后它从数据中呈现出 HTML。没有数据绑定(bind),没有更新,它只是一次性渲染。
AngularJS 是一个 HTML 编译器和数据绑定(bind)器。 Angular 将在 HTML 中查找 Angular 模板标签,解释/编译它们,并使用给定 Controller 范围上的数据更改来更新 HTML。 Angular 不仅仅渲染一次 HTML 字符串,它还会编译 HTML,将其绑定(bind)到某个范围,并在该范围上的数据发生更改时进行更新。
AngularJS databinding/templating in one picture
AngularJS's HTML compiler in one article
AngularJS's whole overview/guide, so you can know how it actually works
关于AngularJS 和 Handlebars - 两者都需要或不需要,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13561447/