1.简介
-
Express是一个基于Node.js的平台,快速、开放、极简的 web 开发框架,他提供一些列强大的特性,帮助你创建各种 web 和 移动设备应用。
2.安装使用
1.安装
cnpm install express --save
2.使用
const express = require("express");
const app = express();
app.get('/', function(request, response){
response.send("hello nodejs");
})
app.get('/news', function(request, response){
response.send("获取新闻列表成功");
})
app.get('/news/:id', function(request, response){
let id = request.params["id"]
let query = request.query // {page: 10, offset: 0}
console.log(query);
response.send(`获取新闻${id}详情成功`);
})
app.listen(3000, 'localhost')
3.在Express框架中使用ejs模板引擎
1.安装ejs
cnpm install ejs --save
2.使用
// app.js
const express = require("express");
const app = express();
app.set("view engine", "ejs");
app.get('/', function(request, response){
let renderData = {
"index": "首页",
"content": "<h3>欢迎来到首页<h3>"
}
// 此处不需要写称:./views/index.ejs
response.render("index", {"data": renderData});
})
app.listen(3000, 'localhost')
<!-- index.ejs -->
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title><%=data.index%></title>
</head>
<body>
<!-- 解析模板语法 - -->
<p><%-data.content%></p>
</body>
</html>
3.公共模板引入方法
<%- include('xxx.ejs')%>
4.指定模板位置,默认模板位置在views
// __dirname:当前目录
app.set('views', __dirname + '/views')
5.修改ejs模板文件后缀名为html
- 1.在
app.js
的头上定义ejs
,代码如下const ejs = require('ejs');
- 2.注册
html
模板引擎代码如下app.engine('html', ejs.__express);
- 3.将模板引擎换成
html
代码如下app.set('view engine', 'html');
- 4.修改模板文件的后缀为
.html
4.利用Express.static托管静态文件
1.如果你的静态资源存放在多个目录下,你可以多次调用express.static
中间件:
// public/css/base.css
app.use(express.static('public'))
2.在ejs
模板引擎中进行引用
<head>
<link rel="stylesheet" href="css/base.css">
</head>
3.虚拟静态目录
app.use('static', express.static('public'))
http://localhost:3000/static/images/logo.png