nodejs 可以直接在返回中使用html标签,例如下面的格式,返回 hello world 将会使用 h1 字体。

app.get('/html',function(req,res){
  res.status(200).send('<h1>hello world</h1>');
});

"E" is for "effective." EJS is a simple templating language that lets you generate HTML markup with plain JavaScript.

安装ejs: npm install ejs 

例子一:

test_163:/home/exenode/jike # more ejslearn.js
var express = require('express');

var app = express();

app.set('view engine','ejs');
app.set('views', __dirname + '/views');       //设置模板文件文件夹,__dirname为全局变量,表示网站根目录。把view目录下的文件设置成模板文件。

app.get('/',function(req,res){
  res.render('home.ejs',{name:'zzz'});    //向页面模板传递参数,可以传递字符串和对象。 并且把页面模板返回给客户端。以json的格式传给 模板页面。

});

app.listen(3002);
test_163:/home/exenode/jike # more views/home.ejs
<html>
  <head>
    <title> new template </title>
  </head>
  <body>
    <p>Hello jikexueyuan</p>
    <p>Hi <%= name %></p>
  </body>
</html>

输出的html页面显示:

Hello jikexueyuan

Hi zzz

例子二:

test_163:/home/exenode/jike # more ejslearn.js
var express = require('express');
var app = express();

app.set('view engine','ejs');
app.set('views', __dirname + '/views');

app.get('/',function(req,res){
  res.render('home.ejs',{name:'zzz'});
});

app.get('/request/:name',function(req,res){                                         //设置请求url中 request 后的字符串,保存到 name 这个变量中。
  // var locals = {name:'westbrook','name':req.params['name']};       
  var locals = {name:req.params['name']}                                       // 把 req.params['name'] 的值作为 字典locals 的 key name 的值。 
  res.render('home.ejs',locals);
});

app.listen(3002);
test_163:/home/exenode/jike #
test_163:/home/exenode/jike # more views/home.ejs
<html>
  <head>
    <title> new template </title>
  </head>
  <body>
    <p>Hello jikexueyuan</p>
    <p>Hi <%= name %></p>                             //获取name的值。
    <p>name:<%= name %></p>                        //获取name的值。

   </body>
</html>

结果:

在前台浏览器中访问: http://192.168.1.163:3002/request/test123  ,页面显示:

Hello jikexueyuan

Hi test123

my name is:test123

nodejs 返回html页面--使用 ejs 模板的更多相关文章

  1. 前端笔记之NodeJS(三)Express&ejs模板引擎&请求识别

    一.Express框架 1.1基本使用 创建http服务器特别麻烦,express框架解决了这个的问题. Express在node界的地位,就相当于jQuery在DOM界的地位.jQuery的核心就是 ...

  2. NodeJS - Express 3.0下ejs模板使用 partial展现 片段视图

    如果你也在看Node.js开发指南,如果你也在一步一步实现 microBlog 项目!也许你会遇到本文提到的问题,如果你用的是Express 3.0 本书实例背景是 Express 2.0 而如今升级 ...

  3. NodeJS 入门第二天(EJS模板)

    一.复习 复习:Node.js开发服务器,数据.路由.本地关心的效果,交互: Node.js实际上是极客开发出的一个小玩具,不是银弹.有着别人不具备的怪异特点: 单线程.Non-blocking I/ ...

  4. ch1-使用路由-静态资源-404页面-ejs模板

    1 package.json 项目文件夹根目录创建这个文件 //要依赖的模块 "dependencies": { //dependency 依赖的复数形式 "expres ...

  5. nodejs(8) 使用ejs渲染动态页面

    使用ejs渲染动态页面 步骤: 安装 ejs 模板引擎npm i ejs -S 使用 app.set() 配置默认的模板引擎 app.set('view engine', 'ejs') 使用 app. ...

  6. 62.nodejs中的ejs模板学习

    转自:https://blog.csdn.net/dongmelon/article/details/72403913 02.ejs.这是被include的文件 <script> cons ...

  7. ejs模板

    nodejs的模板引擎有很多, ejs是比较简单和容易上手的.常用的一些语法: 用<%...%>包含js代码 用<%=...%>输出变量 变量若包含 '<' '>' ...

  8. nodejs-5.1 ejs模板引擎

    ejs官方文档:https://ejs.bootcss.com/ 1.什么是 EJS? "E" 代表 "effective",即[高效]. EJS 是一套简单的 ...

  9. NodeJS实战:Express+Mongoose+ejs

    元宵还没到,先向所有朋友拜一个晚年~~~ 文章目录: 1.组件版本号 -- --node -- --express -- --Mongoose 2.初始化项目 firstblood -- --用 ex ...

随机推荐

  1. Hadoop学习笔记—9.Partitioner与自定义Partitioner

    一.初步探索Partitioner 1.1 再次回顾Map阶段五大步骤 在第四篇博文<初识MapReduce>中,我们认识了MapReduce的八大步凑,其中在Map阶段总共五个步骤,如下 ...

  2. Web3DGame之路,Babylonjs 和TypeScript学习笔记(一)

    一个开源的Webgl3D引擎,javascript or typescript http://www.babylonjs.com 啥是WebGL WebGL 网页图形库,简称WebGL,是一个JS库, ...

  3. Swift 和 C# 的语法比较

    昨天看到Jacob Leverich 写了一篇文章 Swift is a lot like Scala 介绍Swift 和 Scala 的语法对比,从这篇文章的确可以看到Swift 的语法和 Scal ...

  4. Java 浅析内部类

    这篇文章主要讲述Java 内部类的相关知识,主要讲解下面的知识点. 内部类的概念 内部类的特点与使用 多种形式内部类 为什么要使用内部类 内部类的概念 内部类是指在一个类的内部定义了另一个类.例如下面 ...

  5. php后台修改人员表信息

    显示info人员表里所有内容 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "h ...

  6. Atitit GRASP(General Responsibility Assignment Software Patterns),中文名称为“通用职责分配软件模式”

    Atitit GRASP(General Responsibility Assignment Software Patterns),中文名称为"通用职责分配软件模式" 1. GRA ...

  7. Java易混淆的概率:成员变量、类变量、实例变量、局部变量

    先看代码 public class Variable{ int b=0; //实例变量 static int a=0; //类变量 final String c="wws"; // ...

  8. LINQ系列:Linq to Object排序操作符

    LINQ排序操作符包括:OrderBy.OrderByDescending.ThenBy.ThenByDescending及Reverse. 1. OrderBy 1>. 原型定义 public ...

  9. javascript运动系列第九篇——碰撞运动

    × 目录 [1]碰撞检测 [2]无损碰撞 [3]有损碰撞 前面的话 碰撞可以分为碰壁和互碰两种形式,上篇介绍了碰壁运动,本文将从浅入深地介绍碰撞运动的互碰形式 碰撞检测 对于互碰形式的碰撞运动来说,首 ...

  10. JAVA基础代码分享--模拟人机猜拳系统

    问题描述: 一.主要功能: .电脑与人互动,实现“剪刀.石头.布”的游戏: 1.1 角色登陆: ******************** ***欢迎进入猜拳游戏*** **************** ...