初识 EJS 模块引擎

我们学的 EJS 是后台模板,可以把我们数据库和文件读取的数据显示到 Html 页面上面。它
是一个第三方模块,需要通过 npm 安装
https://www.npmjs.com/package/ejs

大家可以在上面的网站获取到ejs的使用说明
安装:

npm install ejs –save / cnpm install ejs --save

Nodejs 中使用:

下面使用代码简单的展示出后台数据渲染在前台页面的过程,今后会慢慢的补充其他细节

项目结构:

创建服务的00service03_ejs.js代码:

var http = require("http")
var url = require("url")
var ejs = require('ejs')
http.createServer(function (req, res) {
res.writeHead(200, {"Content-Type": "text/html;charset='utf-8'"})
var allUrl = req.url;
var path = url.parse(allUrl).pathname;
var str = '我是后台数据,将来我是从数据库读出来的'
var list =[
'1111',
'2222',
'3333'
]
var labelStr='<h2>我是html标签h2包裹的内容</h2>';
if (path == "/login") {
// 把后台(数据库)的数据渲染到模板上面
ejs.renderFile(//这里我们通过ejs.renderFile()方法将后台数据输送给前台页面
/**
* ejs.renderFile()方法一共有三个参数:
*/
//参数1:我们要输出后台数据的目标页面路径:
"views/login.ejs",//这里的login.ejs,其实就是login.html,在下面的补充内容我会补充介绍
//参数2:我们需要输出的数据,以对象的形式输出:
{
msg: str,
list: list,
labelStr:labelStr
},
//参数3:回调函数,输出数据之后我们会获取到渲染了我们后台数据的页面内容data
function (err, data) {
res.end(data)//然后我们将data输出到浏览器,我们的页面就可以展示出来了
});
} else if (path == "/register") {
res.end("register")
} else if (path == "/admin") {
res.end("admin")
}
}).listen(8000)

login.ejs代码:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h1>这是一个ejs后台模板引擎登录</h1>
<!--<%= %>输出标签(原文输出 HTML 标签)(就是后台传什么数据,我就展示什么数据,不会解析html标签-->
<h1><%=msg%>></h1>
<!--<% %>流程控制标签:里面可以书写我们的js代码逻辑-->
<%for (var i=0;i<list.length;i++){%>
<li><%=list[i]%></li>
<%}%>
<%=labelStr%>
<!--<%- %>输出标签(HTML标签会被浏览器解析)-->
<%-labelStr%>
</body>
</html>

访问页面效果:

.ejs文件补充了解:

点击下方链接:

https://www.cnblogs.com/luzhanshi/p/10769867.html

最新文章

  1. Core Data使用
  2. 神奇的VIM~转IBM
  3. Axure RP7.0 使用记录手册
  4. jQuery学习小结1-CSS操作+事件
  5. Java Synchronized Blocks vs. Methods
  6. 第一次碰到try-except(core python programming 2nd Edition 3.6)
  7. Linux/Unix系统SSH远程按Backspace键删除时出现^H的处理方法
  8. spy++捕获窗口消息
  9. jenkins构建个人github上的项目
  10. Android 展示控件之Surface、SurfaceView、SurfaceHolder及SurfaceHolder.Callback之间的关系
  11. C++ Programming Language中的narrow_cast实现
  12. 更改 centos 7的源为 阿里源
  13. python 应用 pyamg
  14. win10下多版本apache(2.2,2.4)+php(5.3.5,5.5.37,5.6.25,7.0.8)注意点
  15. 苏州Uber优步司机奖励政策(4月21日)
  16. Android -- 自定义标题栏,背景颜色填充满
  17. Oracle学习笔记之七(用户管理、角色与权限、导入导出等)
  18. Spring配置文件中的parent与abstract
  19. arcgis android 10.2.5开发环境配置
  20. springboot shiro没有注解解决方案

热门文章

  1. IOS 键盘的显示与关闭
  2. PHP提取字符串中的手机号正则表达式怎么写
  3. plsql中的光标
  4. sh 脚本
  5. js产生对象的3种基本方式(工厂模式,构造函数模式,原型模式)
  6. 微信图片反防盗链 用js不太成熟的解决方式 仅供参考
  7. go反射实例
  8. 微信小程序(应用号)开发教程
  9. jQuery中deferred对象的使用(二)
  10. Matlab中的数据预处理-归一化(mapminmax)与标准化(mapstd)