nodejs 返回html页面--使用 ejs 模板
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 模板的更多相关文章
- 前端笔记之NodeJS(三)Express&ejs模板引擎&请求识别
一.Express框架 1.1基本使用 创建http服务器特别麻烦,express框架解决了这个的问题. Express在node界的地位,就相当于jQuery在DOM界的地位.jQuery的核心就是 ...
- NodeJS - Express 3.0下ejs模板使用 partial展现 片段视图
如果你也在看Node.js开发指南,如果你也在一步一步实现 microBlog 项目!也许你会遇到本文提到的问题,如果你用的是Express 3.0 本书实例背景是 Express 2.0 而如今升级 ...
- NodeJS 入门第二天(EJS模板)
一.复习 复习:Node.js开发服务器,数据.路由.本地关心的效果,交互: Node.js实际上是极客开发出的一个小玩具,不是银弹.有着别人不具备的怪异特点: 单线程.Non-blocking I/ ...
- ch1-使用路由-静态资源-404页面-ejs模板
1 package.json 项目文件夹根目录创建这个文件 //要依赖的模块 "dependencies": { //dependency 依赖的复数形式 "expres ...
- nodejs(8) 使用ejs渲染动态页面
使用ejs渲染动态页面 步骤: 安装 ejs 模板引擎npm i ejs -S 使用 app.set() 配置默认的模板引擎 app.set('view engine', 'ejs') 使用 app. ...
- 62.nodejs中的ejs模板学习
转自:https://blog.csdn.net/dongmelon/article/details/72403913 02.ejs.这是被include的文件 <script> cons ...
- ejs模板
nodejs的模板引擎有很多, ejs是比较简单和容易上手的.常用的一些语法: 用<%...%>包含js代码 用<%=...%>输出变量 变量若包含 '<' '>' ...
- nodejs-5.1 ejs模板引擎
ejs官方文档:https://ejs.bootcss.com/ 1.什么是 EJS? "E" 代表 "effective",即[高效]. EJS 是一套简单的 ...
- NodeJS实战:Express+Mongoose+ejs
元宵还没到,先向所有朋友拜一个晚年~~~ 文章目录: 1.组件版本号 -- --node -- --express -- --Mongoose 2.初始化项目 firstblood -- --用 ex ...
随机推荐
- [Voice communications] 看得到的音频流
上文介绍了 Web Audio API 的相关知识,以及如何在你的 web 程序中引入 音频流,内容都是介绍性的,所以没有写太多 DEMO.本文重点讲解如何利用 Web Audio API 中的中间节 ...
- Net作业调度(三) — Quartz.Net进阶
介绍 前面介绍Quartz.Net的基本用法,但在实际应用中,往往有更多的特性需求,比如记录job执行的执行历史,发邮件等. 阅读目录 Quartz.Net插件 TriggerListener,Job ...
- 电脑桌面 IE 图标删除不了的解决方法
电脑换了系统之后想把桌面的IE浏览器给删掉,可是直接删除又删不掉,杀毒软件查杀也没有问题.找了很多方法,终于才把它给解决了.下面,就把我的方法分享给桌面ie图标删除不了的解决方法,希望能对大家有所帮助 ...
- Java为何用xml做配置文件?
在Java世界里xml配置文件几乎是首选,xml有什么好的特性呢? xml能存储小量数据,仅仅是存储数据. xml可以跨平台,主流各种平台都对xml有支持, 真正的跨平台, xml读取速度快. xml ...
- angularjs揭秘
angularjs揭秘
- atitit.闭包的概念与理解attilax总结v2 qb18.doc
atitit.闭包的概念与理解attilax总结v2 qb18.doc 1.1. 闭包(Closure)是词法闭包(Lexical Closure)的简称,是引用了自由变量的函数.1 2. #---- ...
- 谈谈php里的IOC控制反转,DI依赖注入
理论 发现问题 在深入细节之前,需要确保我们理解"IOC控制反转"和"DI依赖注入"是什么,能够解决什么问题,这些在维基百科中有非常清晰的说明. 控制反转(In ...
- JS原生第五篇 (帅哥)
1.1 节点 1. 节点 网页是有很多的节点组成的 . 元素节点 指的是 : 标签 li span 文本节点 属性节点 父子兄弟 父 parent ...
- HTML5的特性,发展,及使用
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px Menlo; color: #ffffff } p.p2 { margin: 0.0px 0. ...
- MongoDB 内嵌文档
MongoDB是文档型的数据库系统,doc是MongoDB的数据单位,每个doc相当于关系型数据库的数据行(row),doc和row的区别在于field的原子性:row中的column是不和分割的原子 ...