Hiroshima
@Hiroshima
Ровный пацанчик нигде не пропадет!

Почему выдает ошибку User.every is not a function?

Я хочу извлечь имя пользователя из этого объекта в переменную usernameActive :
{ owner: { name: 'Jack', password: '12345' },
  _id: 605f27e660d71e175c928c68,
  __v: 0 }


А вот что я делаю:
var express = require('express');
var router = express.Router();
var Schedule = require("../models/schedule");
var ChatList = require("../models/chatList");
var usernameActive;

router.param("owner", async function(req, res, next, owner) {
    try {
        const User = await Schedule.findOne({ "owner.name": owner });
        User.every(function(keyUsername) {
            usernameActive = keyUsername;
        });
        console.log(usernameActive);

        if (User) {
            req.owner = User;
            next();
        } else {
            next(createError(403));
        }

    } catch (error) {
        console.log('error')
        next(error);
    }
});

/* GET users listing. */
router.get("/:owner", function(req, res, next) {
    res.render("user", { user: req.owner });
});

module.exports = router;


А вот что выходит на деле:
User.every is not a function
TypeError: User.every is not a function
at H:\Autorization\routes\users.js:10:14
at process._tickCallback (internal/process/next_tick.js:68:7)
  • Вопрос задан
  • 62 просмотра
Пригласить эксперта
Ответы на вопрос 1
@hurgadan
Очеивно потому что User у вас null. User.findOne не нашла пользователя по указанному условию, поэтому User - null
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы