ejs

半城伤御伤魂 提交于 2020-08-12 07:39:20

ejs:类似一个html文件,但是不能在当前页面直接通过浏览器打开页面,必须通过服务器来打开

1、输出:

在页面中输出变量值,你可以这么用: <div><%= var01 %></div>
如果不希望变量值的内容被转义,那就这么用:<div><%- var01 %></div>

2、模块的逻辑支持

所有使用 <% %> 括起来的内容都会被编译成 Javascript,你可以在模版文件中像写  js 一样 Coding,也允许你声明变量,作用域就是当前模版,因为一个模版会被编译  成一个 Javascript 函数。

<% var name = "littledu" %>
    <div>
    Hello, My Name is <%-name %>
  </div>


3、循环

就像写 Javascript 一样

<ul>
    <% for(var i = 0; i < 10; i++) {%>
      <li>我是列表 <%-i %></li>
    <% } %>
<ul>


4、Includes的用法

Include 可以引用相对路径的模版文件,例如有 html/index.html 和     html/_block/head.html这两个文件,
你就可以在 index.html 这么用 <% include _block/head.html %>。

<ul>
    <% users.forEach(function(user){ %>
    <% include user/show %>
    <% }) %>
</ul>


5、TmT EJS Helper

在 EJS 之外,提供了一些额外的模版函数来简化我们的一些工作。
GIT:https://github.com/willerce/tmt-ejs-helper

css()方法:快速的引用 CSS 文件,并附上注释线上 CSS 绝对路径,便于下游前端使用。

<head>
    <title>页面标题</title>
    <%- css("style-workflow.css") %>
</head>
//编译后:----------------------------
<head>
    <title>页面标题</title>
        <link rel="stylesheet" href="../../dev/css/style-workflow.css"/>
        <!--<link rel="stylesheet" href="http://wximg.gtimg.com/tmt/workflow/dist/css/style-workflow.css"/>-->
</head>

js()功能与 css() 一致
img() 占位图    :占位图,可以指定高、宽,以及 className

<%- img(200, 400, 'block__img') %>
//编译后:---------------------------
<img src="http://temp.im/200x400" class="block__img"/>

7、text() 占位文本

生成指定长度的占位图,第二个参数为偏移字数

实例:----------------------------------下面这个函数,生成的文本长度可能为 7 ~ 13 位。

<span><%- text(10, 3) %></span>
//编译后:------------------------
<span>一二三四五六七八九</span>

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!