话说我学NodeJS不是从express学起,之前用的模板引擎是handlebars.js,跟wordpress、dedecms之类的模板非常相似,几乎没有学习成本(不过里面的helper还是有点难用),如今做一个个人项目,用的Jade,感觉这货就是个生成器,从一种它自定义的语言生成html,学习曲线比较陡峭,刚开始写Jade都是先写HTML,然后用html2jade转一下,即使后面熟悉了,脑袋里也还是有个人肉转换的过程,先要脑袋将html转换成jade,再让jade 去生成html,感觉很蛋疼。。
而且Jade前端没有数据绑定,如果传给Jade不同的值,它会重新生成页面,也就是说页面会刷新,这样我想做个无刷新或者伪无刷新的网页还得写ajax?这也太落伍了吧。。
不知道大家怎么看。。
express不是必须用jade, 模板引擎可以随便换.
你指的数据绑定是什么? 局部刷新如ajax或者其他前后端通讯技术(websocket/SSE/flash socket/…), 伪刷新如turbolinks或者pjax, 这些和模板都没任何关系, 如果你指的是angularjs那种绑定, jade和angularjs并不冲突, 但是用angularjs同样离不开前后端通讯.
@whatsmynick 是的,但是Jade是express的默认模板引擎啊,很多人一上来学node学express都是用Jade,搞的有些其他相关联项目也用Jade,比如hackathon starter,我现在就用这个,要不然我也不会在这吐槽了。
我之前用的handlebars还有angularjs都有数据绑定,我还以为是模板引擎标配呢,已经有了Jade还得自己写或是去用其他的库,不幸福啊。。 ╭(╯^╰)╮
不习惯
个人很不习惯,不过好用不好用也看不同人习惯了。其实html+emmet就挺好了,写程序不可能不熟悉html,为了一个模板单独搞另外一套类似于coffeescript>javascript的东西,觉得真没必要
我觉得挺好的呀,以前都用 emmet 来写HTML,当时感觉总算是不用敲尖括号了,现在用 jade 就连 Tab 都不用按了,还少些好多引号。
@jiyinyiyong HTML隐藏状态多?而且比Jade还多,这个从何说起?
@andyhu 不错,我觉得要想简化写HTML的劳动,emmet真的足够了。
coffeescript是javascript的子集,避免了js的一些坏的部分,还是很有意义的。
个人觉得HTML挺好的,掌握好HTML,对于调试也很好啊!
@pockry 可是写html的不是程序员,会的不写。
jade写起来挺舒服的
@pockry handlebars 有数据绑定???ember 是 ember,handlebar 是 handlebar 噢。
月经贴啊
@alsotang 额,是没有,不过很容易实现倒是,我之前用的不是emberjs。。
web全都反人类,鉴定完毕
@tolerious 楼上一棍子横扫,世界登时清净了。。。
每次都都会在生成express后加上一句 express --ejs
jade写结构实在是,方便快接,我以前都是用emmet写HTML,自从发现jade之后,就很少了
由于我是.Net程序,所以比较倾向ejs模板
只用过handlebar和ejs的路过
Jade挺好的啊。你想用其他功能就用其他js配合,不过作为模板,我真的挺喜欢Jade的,至少之前用ejs,我就觉得ejs模板不如直接写html算了。
绝对的反人类, 你学了这个, 还是要学html,而且里面转换不对的地方, 你还改不了。 貌似少些了代码, 可是降低了你对代码的控制, 遇到问题, 死也过不去, 而且 你花时间学了,这个没什么用, 就是为了浪费你的时间 本来大家用nodejs是很大程度因为熟悉javascript 结果这个东西一出来,这个‘熟悉’没有效果了 你还是需要在学习这个没大用的东西 基本上是浪费时间浪费钱 学了半天还是得扔 谁用谁sb 浪费时间 废物 唉
用jade 挺不习惯的,可能是没有强迫自己吧,什么东西适应都要有一个过程。
jade最大的问题不是语法问题,语法上对html做了简化,增加了一定学习难度,熟悉了自然就没有问题了。 它的最大问题是效率,如果在服务端渲染的话,消耗的就是实打实的CPU周期,这个跟其他模板比起来差太多了。 我前段时间本来准备写一个类似的模板实现的,不过半途而废了,语法上和jade类似,效率上提升了不少,跟dot等基本一个级别的,比ejs快。
express -e helloworld
觉得jade不习惯的应该是对html大纲就不习惯把
我觉得挺慢的,开始打算用测试后感觉太慢,就直接用angujar在静态页面基础上做了,正好也可以分离前后端 自豪地采用 CNodeJS ionic
开始也是用jade,不习惯那东西改用ejs
个人感觉 Jade 很优雅,服务端模版肯定选它
觉得只要是前后不分离的都是反人类的, jsp、asp、早期php神马的都是反人类的。
自己感觉只要一旦接受了jade这种缩进的设定,用起来还是挺简单方便的…
我目前也非常不习惯jade
@nunnly 完全用jade?还是在页面中嵌套Jade片段?
@jinceon 写jade用的啥编辑器?
ejs还是挺好用的~
还好我都不用,前后分离大法好
@chapgaga 没用jade。平时写代码用webstorm
我们是程序猿,不是人类的!!更无反人类之说。。。
刚开始碰 觉得也就一个语法规则而已 ~~ 不要太在意嘛
如果html一开始就设计成jade这个样子,会有人反对吗?
楼主肯定没写一段时间jade,我是写了一段时间jade,感觉一般,改到ejs,看到满眼的<>,又改回jade了```
ejs感觉更好理解一点 自豪地采用 CNodeJS ionic
ejs不错,简单简洁。 或者swig
其实全使用YAML风格的语言多好,COFFEE + JADE + STYLUS 结构清晰代码量又小,非常爽 https://github.com/findyourmagic/nobrace
@findyourmagic 挺好的,这个组合很经典,就是对人的要求稍高
写习惯了jade觉得挺好的
如今做一个个人项目,用的Jade,感觉这货就是个生成器,从一种它自定义的语言生成html,学习曲线比较陡峭,刚开始写Jade都是先写HTML,然后用html2jade转一下,即使后面熟悉了,脑袋里也还是有个人肉转换的过程,先要脑袋将html转换成jade,再让jade 去生成html,感觉很蛋疼。。 不要刻意去用html去套界面。层就是层 abc可以是层,123可以是层,并不是<div/>才是层,跳出html。。。