Экспорт функции из внешнего файла не работает - PullRequest
0 голосов
/ 12 июня 2019

Мне нужно экспортировать функцию из внешнего файла.

const filter = require('../controllers/filter.js');

exports.get = async function (req, res, next) {
  filter.validateId(req, res, next);
  const db = req.app.get('db');
  let id = req.params.id;
  let user;
  try {
    user = await db.models.user.findByPk(id);
  } catch (err) {
    next(err);
  }
  res.json(user);
};

Структура файла: введите описание изображения здесь

Но я получаю ошибку:

{NotFoundError: не найден в E: \ Dropbox \ BigDeal \ clone \ BigDealExpressJSTest \ app.js: 43: 8 в Layer.handle [as handle_request] (E: \ Dropbox \ BigDeal \ clone \ BigDealExpressJSTest \ node_modules \ express \ lib \ router \ layer.js: 95: 5) в trim_prefix (E: \ Dropbox \ BigDeal \ clone \ BigDealExpressJSTest \ node_modules \ express \ lib \ router \ index.js: 317: 13) в E: \ Dropbox \ BigDeal \ clone \ BigDealExpressJSTest \ node_modules \ express \ lib \ router \ index.js: 284: 7 в Function.process_params (E: \ Dropbox \ BigDeal \ clone \ BigDealExpressJSTest \ node_modules \ express \ lib \ router \ index.js: 335: 12) в следующем (E: \ Dropbox \ BigDeal \ clone \ BigDealExpressJSTest \ node_modules \ express \ lib \ router \ index.js: 275: 10) в E: \ Dropbox \ BigDeal \ clone \ BigDealExpressJSTest \ node_modules \ express \ lib \ router \ index.js: 635: 15 в следующем (E: \ Dropbox \ BigDeal \ clone \ BigDealExpressJSTest \ node_modules \ express \ lib \ router \ index.js: 260: 14) в Function.handle (E: \ Dropbox \ BigDeal \ clone \ BigDealExpressJSTest \ node_modules \ express \ lib \ router \ index.js: 174: 3) на маршрутизаторе (E: \ Dropbox \ BigDeal \ clone \ BigDealExpressJSTest \ node_modules \ express \ lib \ router \ index.js: 47: 12) в Layer.handle [as handle_request] (E: \ Dropbox \ BigDeal \ clone \ BigDealExpressJSTest \ node_modules \ express \ lib \ router \ layer.js: 95: 5) в trim_prefix (E: \ Dropbox \ BigDeal \ clone \ BigDealExpressJSTest \ node_modules \ express \ lib \ router \ index.js: 317: 13) в E: \ Dropbox \ BigDeal \ clone \ BigDealExpressJSTest \ node_modules \ express \ lib \ router \ index.js: 284: 7 в Function.process_params (E: \ Dropbox \ BigDeal \ clone \ BigDealExpressJSTest \ node_modules \ express \ lib \ router \ index.js: 335: 12) в следующем (E: \ Dropbox \ BigDeal \ clone \ BigDealExpressJSTest \ node_modules \ express \ lib \ router \ index.js: 275: 10) в SendStream.error (E: \ Dropbox \ BigDeal \ clone \ BigDealExpressJSTest \ node_modules \ serve-static \ index.js: 121: 7) на SendStream.emit (events.js: 189: 13) в SendStream.error (E: \ Dropbox \ BigDeal \ clone \ BigDealExpressJSTest \ node_modules \ send \ index.js: 270: 17) в SendStream.onStatError (E: \ Dropbox \ BigDeal \ clone \ BigDealExpressJSTest \ node_modules \ send \ index.js: 421: 12) в следующем (E: \ Dropbox \ BigDeal \ clone \ BigDealExpressJSTest \ node_modules \ send \ index.js: 736: 16) в onstat (E: \ Dropbox \ BigDeal \ clone \ BigDealExpressJSTest \ node_modules \ send \ index.js: 725: 14) на FSReqWrap.oncomplete (fs.js: 154: 21) сообщение: «Не найдено»} GET / 4 404 48,713 мс - 100

1 Ответ

0 голосов
/ 12 июня 2019

Я считаю, что require указывает на неправильное местоположение (при условии, что предоставленный код находится в userController.js).

Должно быть:

const filter = require('./filter');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...