1、初始化项目,npm init,生成package.json;
2、安装express,npm install --save express,安装完成后,生成node_modules(第三方模块目录),dependencies会显示一些依赖信息;
3、建立项目目录(除了node_modules已生成)
db——数据库存储目录
models——数据库模型文件目录
public——公共文件(js, css, img等)目录
routers——路由文件目录
schemas——数据库结构文件目录
views——模板视图文件目录
以及,app.js——应用程序的启动(入口)文件, node.exe app.js
4、利用app.get()完成路由绑定;把html文件和后端进行逻辑分离,方便后期维护管理;加载模板处理模块,swig;
/*
应用程序的启动(入口)文件
*/
//加载express
var express = require('express');
//加载模板处理模块
var swig = require('swig');
//创建app应用 => nodejs http-server
var app =express();
//配置应用模板
//定义当前应用所使用的模板引擎
//第一个参数:模板引擎的名称,同时也是模板文件的后缀,第二个参数表示用于解析处理模板内容的方法
app.engine('html',swig.renderFile);
//设置模板文件存放的目录,第一个参数必须是views,第二个参数是目录
app.set('views','./views');
//注册所使用的模板引擎,第一个参数必须是view engine,第二个参数和app.engine这个方法中定义的模板引擎的名称(第一个参数)是一致的
app.set('view engine','html');
//在开发过程中,需要取消模板缓存,方便我们在开发过程中进行调试
swig.setDefaults({cache:false});
/*req http-request 客户端请求
res http-response 服务器端输出
next 执行下一个和路径匹配的函数*/
app.get('/',function(req,res,next){
// res.send('<h1>Welcome to my blog.</h1>')
/*
读取views目录下的指定文件,解析并返回给客户端
第一个参数:模板的文件相对于views目录 view/index.html,默认情况下不需要去带.html,可以带
第二个参数:传递给模板使用的数据
*/
res.render('index');
})
//监听请求
app.listen(8080);
注意:首次使用express框架,缺少一些必备的modules,这时,根据报错提示去安装相应的modules即可。
此时,模块引擎的配置基本完成,且由于已经暂时取消了模板缓存,swig.setDefaults({cache:false});这就方便我们在开发过程中进行调试,免去了重启服务器的麻烦。