codecamp

Harp EJS

EJS 是 "Embedded JavaScript" 的缩写,描述的很好:通过嵌入具有 JavaScript 特色的功能来进行 HTML 模板渲染。这让你在 你的元数据 上进行遍历,包含 局部视图,还有其他的。

EJS 比较通俗,因为主要是 HTML,但又具有额外的功能让你有效地复用你的项目代码块。如果你有一个现有的 HTML 项目,你所需做的全部工作就是用 .ejs 扩展名重命名文件,然后你就可以使用 EJS 的特色功能了。

Jade,另外一个 HTML 预处理器,也是与 Harp 工作的相当好,你可以尝试一下。

用法

Harp 的 Asset Pipeline 用起来相当简单。所有的处理过程都是静默完成的,不需要进行任何设置。只需要将你的文件用 .ejs 扩展名来命名,而不是 .html,Harp 会将它看做是 .html 文件。

示例

这个项目在根目录中包含一个 index.ejs 和一个 about.ejs 文件。

myproject/
  |- index.ejs
  +- about.ejs

index.ejs 和 about.ejs 都会被当作 .html 文件。因此,如下路径的请求都会成功:

  • /
  • /index
  • /index.html
  • /about
  • /about.html

Harp 的编译步骤也会将文件导出为 index.html 和 about.html

管理文件扩展名

你有可能会想使用 EJS 创建另外一个基于 markup 文件,而不是 .html。没问题:只需要将你想要的扩展名放在 .ejs 前面。例如,feed.xml.ejs 会被 Harp 当作 feed.xml 进行解析。

还可以参考


Harp Markdown
Harp Jade
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }