ejs跟angularjs相比,实在是太难写了,附实例!
例如一段以下代码的实现
判断
ejs
<% if (data.success) { %>
<span><%= data.success %></span>
<% } %>
<% if (data.err) { %>
<span><%= data.err %></span>
<% } %>
angularjs
<span>{{ data.success }}</span>
<span>{{ data.err }}</span>
遍历
var arrs = [{name:a, age:10}, {name:b, age:20}];
ejs
<% arrs.forEach(function (v, k){ %>
<span><%= v.name %></span>
<span><%= v.age %></span>
<% }) %>
angularjs
<div ng-repeat="arr in arrs">
<span>{{ arr.name }}</span>
<span>{{ arr.age }}</span>
</div>
10 回复
你可以把 ejs 换成 handlebars,handlebars 跟 angular 的模板是相似的语法。
哥都是用html
哇哦,没听过handlebars
现在才来,初学,感觉作者的文章很好!
ng-repeat
没法脱离DOM元素吧,以前看ember vs ng
的一个视频,在一个table
里重复展示数据,好像是把tr
一拆二来展示,ng
就没想出来方法。各有各的好。
var ejs = require(‘ejs’); ejs.open = ‘{{’; ejs.close = ‘}}’;
大部分的模板引擎都是支持语法定制的,没啥纠结的
我的想法是,是否可以用js来操作呢?但是在server端渲染,然后把结果返回客户端,现在有这样的方案吗?
ejs没有学习成本,使用灵活,和jsp,asp是一脉相承的
楼主没写过jsp