Mongoose.js - не знаю, почему не работает мой условный массив, если массив больше [0]

Я использую MERN & im, борясь с оператором if, как показано ниже.

  ...
    const checkHistroy = await (Schema.findOne({
        userId: user.id
    }).find({
        "History.0": {
            "$exists": true
        }
    }))

    try {

        if (checkHistory) {
            console.log('you cannot send any more request')
        } else {
            res.status(200).send(postData);
        }


    } catch (err) {
        res.status(500).send(err);
    }
    });

Я в основном пытаюсь ограничить массив пользователей не более 1 (т. Е. Только индекс 0). Я проверил мою const checkHistory но const checkHistory утверждение If возвращает ответ, как если бы его условие не соблюдалось. Мой вопрос заключается в том, делаю ли я что-то явно неправильно или у mongo / mongoose есть свой синтаксический способ выполнения условных выражений. Помощь и / или совет высоко ценится.

Всего 1 ответ


Если вы хотите установить условие для длины массива, вы должны сделать следующее:

if (checkHistory.length >= 1) {
     console.log('you cannot send any more request')
}

Есть идеи?

10000