express路由的问题?

**文件结构
router
│   └── index.js
router-action
│   └── index.js**

为什么以注释内的文件可以运行成功,router.get('/', routerAction.index);这样就不成功呢?

var express = require('express'),
    router = express.Router(),
    routerAction = require('../router-action');

router.get('/', routerAction.index);
// router.get('/', function(req, res){
//     res.render('index', {title: 'Microblog-express'});
// });

app.js文件

var express = require('express');
var path = require('path');
var favicon = require('serve-favicon');
var logger = require('morgan');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
var router = require('./router');
......
app.use('/', router);

router-action/index.js文件

exports.index = function(req, res){
    res.render('index', { title: 'Microblog-express' });
}
阅读 3k
3 个回答

找到问题了,我router-action/index.js是这样的,所以成空函数了,太粗心了

exports.index = function(req, res){
    res.render('index', { title: 'Microblog-express' });
}
......

 exports.index = function(req, res){
    // res.render('index', { title: 'Microblog-express' });
 }

印象中省略的只是.js后缀吧,试试(未测试):

routerAction = require('../router-action/index');
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进