Получите ошибку при разбиении файла в выражении nodejs - PullRequest
0 голосов
/ 10 февраля 2019

Ошибка:

throw new TypeError ('Router.use () требуется функция промежуточного программного обеспечения, но получил' + gettype (fn))

file (app.js) выглядит следующим образом:

const express = require( 'express' )
const app = express()
const product = require( './api/routes/products')


app.use('/products', product )


module.exports = app;

И затем он говорит в nodemon:

throw new TypeError ('Router.use () требует функцию промежуточного программного обеспечения, нополучил '+ gettype (fn))

Это мой файл products.js:

const express = require( 'express' )
const router = express.Router()

router.get('/', ( req, res, next ) => {
  res.status( 200 ).json( {
    test: 'got it'
  } )
})

Чего-то не хватает?Я использую экспресс 4.0.16.

1 Ответ

0 голосов
/ 10 февраля 2019

app.use принимает функцию для применения к запросам.Ваш products.js ничего не экспортирует, поэтому, когда вам это требуется, переменный продукт не является функцией.Попробуйте установить module.exports для функции-обработчика, а не передавать ее маршрутизатору.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...