我真的很难将我的路线分成不同的文件。在我的./routes/index.js文件中,我有以下代码:
var express = require('express');
var router = express.Router();
...
router.all('/', requireLogin, function(req, res, next){
next();
});
/* GET home page. */
router.get('/', function(req, res, next) {
res.render('index', { title: appConfig.appTitle,
messageForm: req.session.messageData,
});
});
router.get('/login', function(req, res){
res.render('login', {title: appConfig.appTitle,
messageForm: passport.messageData})
});
router.post('/login', passport.authenticate('local', {
failureRedirect: '/login',
successRedirect: '/',
failureFlash: true }
));
router.use('./inventory', require('./inventory'))
router.use('./transaction', require('./transaction'))
module.exports = router;
现在,/ login页面和/页面正常工作。但是,当我尝试进入/ transaction时,我收到一条错误消息,说无法进行GET /事务处理。这是transaction.js中与index.js位于同一目录的代码:
var express = require('express');
var router = express.Router();
/* GET home page. */
router.get('/', function(req, res, next) {
console.log('router.get');
});
module.exports = router;
但是如果我将来自transaction.js的router.get(' /')包含到index.js中并将其重命名为router.get(' / transaction'),那么工作正常。我有什么东西在这里失踪吗?
答案 0 :(得分:1)
尝试这样。只需删除网址中的点。
beforeSelectRow
答案 1 :(得分:0)
:
var routes = require('./routes/index'),
transaction = require('./routes/transaction');
app.use('/transaction', transaction);
app.use('/', routes);