运行节点index.js时,我不断收到以下错误

错误:“node_modules / express / lib / router / index.js:458 Router.use()需要一个中间件function,但在Function.use处得到一个对象”

码:

const express = require('express'); const bodyParser = require('body-parser'); const mustacheExpress = require('mustache-express'); const pgp = require('pg-promise'); const port = process.env.PORT || 3000; const app = express(); app.use(bodyParser.urlencoded({ extended: false })); app.use(bodyParser.json()); app.engine('html', mustacheExpress()); app.set('view engine', 'html'); app.set('views', __dirname + '/views'); app.use(express.static(__dirname + '/public')); const students = require('./controllers/students.js'); const houses = require('./controllers/houses.js'); app.use('/houses', houses); app.use('/students', students); app.get('/', (req, res) => res.render('home/index')); app.listen(port, () => { console.log("Server started on " + port); }); module.exports = router; 

controllers / students.js:这是第一个链接到index.js的文件

 const router = require('express').Router(); const Students = require('../models/students.js'); router.get('/', Students.findAll, (req, res) => { res.render('students/index', {studentsData: res.locals.allStudentsData}) }); router.get('/:id', Students.findById, (req, res) => { res.render('students/show', res.locals.showStudent) }); module.exports = router; 

controllers / houses.js:这是链接到index.js的第二个文件

 const router = require('express').Router(); const Houses = require('../models/houses.js'); router.get('/', Houses.findAll, (req, res) => { res.render('houses/index', {housesData: res.locals.allHousesData}) }); router.get('/:id', Houses.findById, (req, res) => { res.render('houses/show', res.locals.showHouse) }); module.exports = router;