Express难点解析
app.js 应用程序入口文件
1.// view engine setup 设置视图引擎
app.set('views', path.join(__dirname, 'views'));//告诉express在views目
录下搜索所有模板
app.set('view engine', 'hjs');//在这些模板上应用HJS模板引擎
2.//app.use()注册http请求的中间件,配置路由响应
app.use(app.router);
app.use(express.static(path.join(__dirname, 'public')));
express.static指定了静态页面的查找目录,
package.json包含需模块和项目的配置信息。
{
"name": "Bellis",
"version": "0.0.0",
"private": true,
"scripts": {
"start": "node ./bin/www" --运行指定脚本命令
},
"dependencies": { --项目应用运行一栏模块
"body-parser": "~1.13.2",
"cookie-parser": "~1.3.5",
"debug": "~2.2.0",
"express": "~4.13.1",
"hjs": "~0.0.6",
"morgan": "~1.6.1",
"serve-favicon": "~2.3.0"
}
}
关于指定版本:波浪号~(tilde)+指定版本:比如~1.2.2,表示安装1.2.x的最
新版本(不低于1.2.2),但是不安装1.3.x,也就是说安装时不改变大版本号和
次要版本号。
routes目录中的文件会在app.js中定义,如:若routes中存在
index.js,login.js,在app.js如下定义:
var routes = require('./routes/index');
var login = require('./routes/login');
app.use('/', routes);
app.use('/' + 'login', login);
views下存放routes下路由的模板
如:index.hjs/login.hjs