调整布局目录
在 views目录下创建layouts
文件夹,并把views目录下的layouts.hbs
文件移到layouts
文件夹里面,再把layout.hbs
重命名成main.hbs
调整app.js的代码
#增加
//指定默认layout
app.set('view options', { layout: 'layouts/main'});
增加其他布局
views/layouts
下增加tt.hbs
文件,内容如下
<!DOCTYPE html>
<html>
<head>
<title>使用tt布局</title>
</head>
<body>
{{{body}}}
</body>
</html>
views
目录下创建tt
文件夹,tt
文件夹创建index.hbs
文件,内容如下
<h1>{{title}}</h1>
<p>这里的路径是/tt/index</p>
修改routes
下的index.js
文件,增加
router.get('/tt/index', function(req, res, next) {
res.render('tt/index', { title: 'tt来了', layout: 'layouts/tt'});
});
浏览器输入 localhost:3000/tt/index 即可查看效果
优化
把视图文件的后缀.hbs
改为.html
app.set('view engine', 'html');
app.engine('html', require('hbs').__express);
路由配置文件单独管理
在项目根目录下创建routes.js
文件,内容如下
module.exports = function(app){
app.use('/', require('./routes/index'));
app.use('/trading/order', require('./routes/trading/order'));
}
在routess目录下创建trading
文件夹,在trading
文件夹下创建order.js
文件,内容如下
var express = require('express');
var router = express.Router();
router.get('/', function(req, res, next) {
res.send('/trading/order');
});
router.get('/list', function(req, res, next) {
res.send('/trading/order/list');
});
module.exports = router;
app.js
里面把原来的app.use('/', indexRouter);
此类代码注释掉,增加
require('./routes')(app);
浏览器地址输入 localhost:3000/trading/order/list 即可查看效果