详细流程 写在这里了
nodejs (experss框架流程详解)
express 静态资源
在express 中public 是在框架中存放 资源的地方 比如JS CSS 图片等 如果想加别的直接增加文件夹就可以
举栗子
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<link rel="stylesheet" href="/stylesheets/style.css">
<title><%=title%></title>
</head>
<body>
<a><%=title%></a>
<h1>超链接为啥不是蓝色</h1>
<img src="/images/dog.jpg">
</body>
</html>
在HTML 所有的控件如果想访问public下的资源 可以使用 / 文件夹/文件名 就可以 比如(/images/dog.jpg)
为什么会这么方便?
因为:
在app.js中 下面这句话把public文件夹 做成全局静态路径 路径变成http://localhost:端口/images/dog.jpg形式
如果想改变不用public文件 修改 app.js 把public 修改一下就好了
app.use(express.static(path.join(__dirname, 'public')));
模板引擎
模板引擎 感觉有点数据绑定的意思 这是我个人理解哈
上代码
路由
var express = require('express');
var router = express.Router();
/* GET home page. */
router.get('/', function(req, res, next) {
res.render('index', { title: 'Express' });
});
module.exports = router;
index.ejs
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<link rel="stylesheet" href="/stylesheets/style.css">
<title><%=title%></title>
</head>
<body>
<a><%=title%></a>
<h1>超链接为啥不是蓝色</h1>
<img src="/images/dog.jpg">
</body>
</html>
1)路由
res.render('index', { title: 'Express' }); 发送对象 也可以是数组
2)index.ejs 通过<%=title%> 来获取对象
如果加逻辑 可以
<%if(..){..}%>
下一步 做一个后台项目 终于要入水了