现在的位置: 首页 > web前端 > 正文

Dust js模板引擎

2020年07月09日 web前端 ⁄ 共 995字 ⁄ 字号 评论关闭

  dustjs是一款js模板,最早由个人开发维护,后来由linkin接手,发展的更加迅速,说实话js模板这块有很多选择,都非常优秀,和paypal的选择一样,最终我使用dustjs作为我的首选模板语言。dustjs中文的文档非常少,所以在国内的使用不是很多,这里几篇博文有对dustjs语法基本的介绍Dust.js语法简介。


  Dust.js语法简介


  express4.0默认的模板引擎是jade,jade刚刚开始用的时候感觉像python,有严格的语法格式,方便程序员养成良好的编码习惯,但是在实际使用下就会发现这种强制,在模板端编写逻辑语言的时候,特别在嵌套判断的时候会有一些无法逾越的问题,同时它的性能问题也一直别人诟病。当然你也可以ejs或者其他模板,这不是我要阐述的重点。


  Dust.js的实现


  如果是现成的express项目或者使用express-genarate生成基本结构之后,在package.json文件的dependencies添加三个依赖。


  "dustjs-helpers":"~1.3.0",


  "dustjs-linkedin":"~2.4.2",


  "adaro":"^0.1.5"


  其中dustjs-linkedin是dustjs模板本身,dustjs-helpers是一些模板的扩展方法,在dustjs官方的文档中有说明,非常有用,你可以添加自己的helper方法。而adaro是paypal公司提供的dustjs渲染类库,可以使用它方便的在多个模板引擎中切换,paypal的基于express的web框架krakenjs使用的就是adaro作为模板管理的工具。


  然后在app的入口代码处添加模板的使用情况


  vardustjs=require('adaro');


  varapp=express();


  //注册


  app.engine("dust",dustjs.dust({cache:false}));


  //viewenginesetup


  app.set('views',path.join(__dirname,'views'));


  app.set('viewengine','dust');


  总之,在views目录下使用添加.dust后缀的视图文件。如果你编写了自己的helper那么需要手动在入口文件处require一下。

抱歉!评论已关闭.