1:学习node的第一个框架一般都是express 学习express之前只是要简单的安装一下express,2条命令即可安装成功
第一:npm init -y 生成package.json文件 这个相当于是node包管理的配置文件
第二:cnpm install express --save-dev 将express下载安装到本地
2:在根目录下面新建app.js 内容如下 基本包含了 引入expree包 初始化express 设置模板目录 设置模板引擎 构造路由 生成一个300端口的服务(端口可以自定义 在范围之内) 方便启动服务 启动服务就直接在cmd下 node app.js
let express = require('express');
let app = express();
let index = require('./router/index');
app.set('views','views'); //设置视图目录 这里相关设置 使用的是app.set
app.set('view engine','ejs'); //设置模板的引擎
app.use('/',index) //这里是加载路由 相当于是路由中间件 使用的是app.use
app.get('/',(req,res)=>{ //设置一个http请求的路径 根目录 有一个回调函数
res.send('this is root');
})
app.listen(3000,()=>{ //设置端口
console.log('service start success');
})
3,使用了express的路由功能 在当前目录下面新建一个router的文件夹 然后在该文件夹下面新建路由文件,我这里取名问index.js
基本内容包含 引包 然后生成路由 设置回调函数 这里面有两个路由的回调函数有点不一样 res.send ,,, res.render
res.send是直接把内容输出到浏览器,res,render是先去加载ejs的模板引擎(ejs需要先下载 cnpm install --save-dev ejs).
let express = require('express');
let router = express.Router();
router.get('/index',(req,res)=>{ //设置路由 回调函数是直接在浏览器输出
res.send('this is index')
})
router.get('/index_a',(req,res)=>{ //设置路由 回调函数是去加载模板文件
res.render('index_a',{'id':1}) //param1 模板文件名称 param2 传递参数(可以有多个参数)
})
module.exports = router; //路由必须导出 别的文件才能使用require来导入
3:在当前目录下新建views目录 在该目录下面新建index.ejs模板文件 注意后缀名必须是ejs的 因为app.js是这样设置的模板引擎
内容如果 本人就没有按照ejs的语法来书写模板的html结构的内容了 <%=id%> 这个就是用来接收路由给模板传递过来的数 据的
index_a.ejs id is : <%=id%>