51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

node.js -4- ejs 简单教程

ejs 是 node.js 的一种模板引擎,本文介绍简单用法。

简介 {#简介}

EJS是一个javascript模板库,用来从json数据中生成HTML字符串。

  • 功能:缓存功能,能够缓存好的HTML模板;
  • <% code %>用来执行javascript代码
  • ejs模板文件后缀名 .ejs

常用语法 {#常用语法}

  • <%...%>包含 js 代码
  • <%=...%>输出变量 变量若包含'<' '>' '&'等字符 会被转义
  • <%-...%>输出变量 不转义
  • <%- include('user/show') %>引入其他模板 包含./user/show.ejs
  • <%# some comments %>来注释,不执行不输出
  • <%% 转义为 '<%'
  • <% ... -%> 删除新的空白行模式?
  • <%_ ... _%> 删除空白符模式

安装 {#安装}

基本用法 {#基本用法}

方法 {#方法}

  • ejs.compile()

  • ejs.render()

  • options参数

    • cache 缓存编译后的函数(ejs.compile(...) ,需要 filename参数作为缓存的key
    • filename 用于缓存的key,和include
    • context 函数的执行上下文
    • compileDebug 输出compile的信息来跟踪调试
    • client 返回编译后的函数
    • delimiter <% ... %> 指这里的%
    • debug 输出ejs.compile()得到函数的函数体
    • strict ejs.compile()返回的函数是否执行在严格模式
    • _with 是否使用 with(){...} 来访问本地变量
    • localsName 保存本地变量的对象名,默认为locals
    • rmWhitespace 移除多余空格
  • include(文件包含)
    被包含文件的路径可以是:绝对路径或相对路径,还可以传入data

    include是在运行时被执行的,所以可以支持路径为变量, 如:

  • 自定义模板定界符

  • 页面布局
    ejs 没有显式的支持布局功能,但是可以通过 include 页头页脚的方式,实现基本的布局。

基本语法 {#基本语法}

引入其他文件 {#引入其他文件}

上面的代码将path目录下的filename.ejs文件引入到当前文件中,并将data的值传入filename.ejs文件中。

此处使用<%- %>是为了避免二次转义。

也可以使用<% include path/filename %>进行引入

设置分隔符 {#设置分隔符}

模板嵌套 {#模板嵌套}

ejs不支持像Jade那样的block布局,但是可以使用include的方式实现布局

变量定义标签属性 {#变量定义标签属性}

循环 {#循环}

if语句 {#if语句}

参考资料 {#参考资料}



文章链接:
https://www.zywvvd.com/notes/coding/node-js/node-js-ejs/node-js-ejs/

赞(1)
未经允许不得转载:工具盒子 » node.js -4- ejs 简单教程