特性

  • <% %> 用于控制流

  • <%= %> 用于转义的输出 (会对数据字符进行转义)

    // 数据源
    // app.js var tem={
    title:"我是中间部分",
    info:[{Name:"davi", Time:},{name:"bill", Time:},{name:"can", Time:}]
    }; // index.ejs
    // '<%=JSON.stringify(info)%>'
    [{&#;Name&#;:&#;davi&#;,&#;Time&#;:},{&#;name&#;:&#;bill&#;,&#;Time&#;:},{&#;name&#;:&#;can&#;,&#;Time&#;:},{&#;name&#;:&#;can&#;,&#;Time&#;:}]
  • <%- %> 用于非转义的输出  (数据原本是什么就输出什么)

  • -%> 结束标签用于换行移除模式

  • 带有 <%_ _%> 的控制流使用空白字符移除模式

添加外部js

  ejs模板中未能直接使用外挂js 方法, 但能够通过nodejs中 app.js 引入,挂载到 全局变量locals中,ejs中直接调用,直接上代码:

// common.js

var Common = {
timeToDate: function(ts) {
var Y, M, D, h, m, s;
var date = new Date(ts);
Y = date.getFullYear() + '-';
M = (date.getMonth() + < ? '' + (date.getMonth() + ) : date.getMonth() + ) + '-';
D = (date.getDate() < ? '' + (date.getDate()) : date.getDate()) + ' ';
h = (date.getHours() < ? '' + (date.getHours()) : date.getHours()) + ':';
m = (date.getMinutes() < ? '' + (date.getMinutes()) : date.getMinutes()) + ':';
s = (date.getSeconds() < ? '' + (date.getSeconds()) : date.getSeconds());
return (Y + M + D + h + m + s);
}
};
module.exports = Common;
// nodejs  app.js

var http=require("http");
var express=require("express");
var fs = require("fs");
var bodyParser = require('body-parser');
var Common = require("./publice/common");
var app=express(); var tem={
title:"我是中间部分",
info:[{Name:"davi", Time:},{name:"bill", Time:},{name:"can", Time:}]
}; //挂载静态资源处理中间件
//app.locals.Common = Common;
app.use(function(req, res, next){
res.locals.Common = Common;
next();
}); ............................
// index.ejs

<div>
<%info.forEach(function (name) { %>
<dl class="clear-fix">
<dd class="wd150"><%= Common.timeToDate(name.Time)%></dd>
<dd class="wd120 alc">50天</dd>
<dd class="wd120 alc">¥</dd>
</dl>
<%})%>
</div>

Nodejs + express + ejs的更多相关文章

  1. nodejs+express+ejs+mongoose实例

    nodejs+express+ejs+mongoose实例 nodejs学得异常痛苦,在这里将学的东西做一番整理,算是自我安慰吧.根据网上todo示例,用express和mongoose重写了部分代码 ...

  2. 用nodejs,express,ejs,mongo,extjs实现了简单了网站后台管理系统

    源代码下载地址:http://download.csdn.net/detail/guoyongrong/6498611 这个系统其实是出于学习nodejs的目的而改写的系统. 原来的系统前端使用了ex ...

  3. Windows环境下,从零开始搭建Nodejs+Express+Ejs框架(二)---安装Express,ejs

    安装Express,ejs的前提是一定要先安装nodejs,具体安装方法请查看 http://www.cnblogs.com/tfiremeteor/p/8973105.html 安装Express和 ...

  4. Nodejs + express + ejs 之服务器demo

    var http=require("http"); var express=require("express"); var fs = require(" ...

  5. Windows环境下,从零开始搭建Nodejs+Express+Ejs框架(一)---安装nodejs

    第一步,安装nodejs https://nodejs.org/en/download/ 这个是nodejs的官网,由于操作系统是win7 64位的,所以,我下载的是node-v8.11.1-x64的 ...

  6. nodejs下express+ejs环境搭建

    nodejs下express+ejs环境搭建   分类: Nodejs 1.进入需要创建项目的目录    cd F:\nodeCode     2.创建一个带ejs模板工程,工程名为haha    e ...

  7. nodejs创建express+ejs项目

    很多同学跟着 node.js开发指南 学习用 express+ejs 创建项目的时候,却总是无法成功,如: 运行 以下命令去创建 express+ejs 创建项目 $ express -t ejs m ...

  8. nodejs+express+mysql 增删改查

    之前,一直使用的是nodejs+thinkjs来完成自己所需的项目需求,而对于nodejs中另外一中应用框架express却了解的少之又少,这两天就简单的了解了一下如何使用express来做一些数据库 ...

  9. nodejs+express中设置登录拦截器

    在nodejs+express中,采用nodejs后端路由控制用户登录后,为了加强前端的安全性控制,阻止用户通过在浏览器地址栏中输入地址访问后台接口,在app.js中需要加入拦截器进行拦截: /*** ...

随机推荐

  1. C#-WebForm-★★★JQuery-动画★★★

    1.show(),hide() 瞬间显示或隐藏,隐藏后不占有位置 2.slideDown(),slideUp() 向下拉伸显示,向上缩减隐藏 3.fadeIn(),fadeOut() 渐显或渐隐,隐藏 ...

  2. C#-一维数组——★★冒泡排序★★

    ////★★★★★冒泡排序 ; i < a - ; i++) { ; j < a; j++) { if (age[i] < age[j]) { int zhong = age[i]; ...

  3. LOJ2476. 「2018 集训队互测 Day 3」蒜头的奖杯 & LOJ2565. 「SDOI2018」旧试题(莫比乌斯反演)

    题目链接 LOJ2476:https://loj.ac/problem/2476 LOJ2565:https://loj.ac/problem/2565 题解 参考照搬了 wxh 的博客. 为了方便, ...

  4. WC2019退役记

    sb题不会,暴力写不完,被全场吊着打,AFO

  5. 【性能测试】脚本开发,最普通的http协议脚本

    放上来做个备份: Action() { double transTime; // 事务消耗时间 lr_start_transaction("营销_01_MSMH0011_查询拥有码列表&qu ...

  6. MySQL的逻辑查询语句的执行顺序

    一.select语句关键字的定义顺序 二.select语句关键字的执行顺序 三.准备表和数据 四.准备SQL逻辑查询测试语句 五.执行顺序分析 一.select语句关键字的定义顺序 SELECT DI ...

  7. 开发者必备的12个JavaScript库

    现在 web 设计是最有趣的了,做好 web 设计不仅要熟练使用 Javascript,css 和 html 等,还要有自己的创意设计.为了方便大家发挥自己的创意,就产生了很多 JS 框架,Node. ...

  8. call()和apply()方法(切换上下文)

    call方法: 语法:call([thisObj[,arg1[, arg2[, [,.argN]]]]]) 定义:调用一个对象的一个方法,以另一个对象替换当前对象. apply方法: 语法:apply ...

  9. 手动添加Git Bash到右键菜单

    1. 打开注册表. 2. 找到[HKEY_CLASSES_ROOT\Directory\Background]. 3. 在[Background]下如果没有[shell],则右键-新建项[shell] ...

  10. 设计模式笔记-观察者(Observer)

    观察者设计模式应该是比较简单的一个设计模式. 定义 定义了对象之间的一对多依赖,这样以来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新. 简单理解就是: 当1个对象状态有所改变的时候,依 ...