Express生成器
一般脚手架工具都是全局安装,使用
-g参数即可全局安装,使用时无需使用npx命令前缀
首先使用npm install express-generator -D命令本地安装脚手架工具,使用npx express 项目名 创建项目,默认模板引擎是jade,可使用view参数指定其他支持的模板引擎,也可使用no-view不适用模板引擎,其他参数适用help参数进行查看,创建出的目录结构如下
| 文件或目录名 | 描述 |
|---|---|
bin/www |
是项目的入口文件,仅提供http服务器对象用于启动项目 |
app.js |
各种中间件注册,比如:路由,静态资源,错误,404等 |
routes |
路由目录 |
views |
视图模板目录 |
public |
公共静态资源目录 |
app.js文件中其他中间件解释
var createError = require('http-errors'); //用于快速创建http错误响应的中间件
// catch 404 and forward to error handler
app.use(function(req, res, next) { //404错误处理中间件
next(createError(404)); //创建404http响应状态码,并将错误传给下面的错误处理中间件
});
app.use(function(err, req, res, next) { //错误处理中间件
// set locals, only providing error in development
res.locals.message = err.message; //将错误信息放入locals上,让所有模板都可以使用
res.locals.error = req.app.get('env') === 'development' ? err : {};
//开发模式下将错误对象locals上,非开发模式挂的是空对象,不会讲错误信息暴露给用户
// render the error page
res.status(err.status || 500); //设置http错误状态码
res.render('error'); //渲染视图模板中的error页面
});
www文件中其他中间件解释
var debug = require('debug')('项目名:server');
//debug模式下会输出信息 DEBUG=* 模式下启动
//有命名空间,比如 DEBUG=项目名:server 只会输出 项目名:server 的debug信息
debug('Listening on ' + bind);
//项目名:server Listening on 3000 +0ms
//以 项目名:server 为前缀,以距上次输出时间间隔为后缀

Comments NOTHING