Указание параметров запроса Mongo из клиентского контроллера (MEAN.JS)

Я создаю приложение, используя MongoDB, Angular, Express и Node (MEAN стек).

Я использовал генератор MEAN.JS, чтобы защитить мои приложения.

Я буду использовать модуль статей в качестве ссылки.

Предположим, у меня есть 7000 записей в моей коллекции статей, и у каждой записи есть своя дата. Неэффективно загружать все 7000 записей в память каждый раз, когда я загружаю страницу для просмотра записей в таблице, и из-за этого я вижу ужасные потери производительности. По этой причине я хотел бы только загрузить записи с датой в диапазоне (1 месяц назад) до (1 год с сегодняшнего дня) и отобразить их в таблице. В настоящее время я могу сделать это с помощью следующего:

В моих статьях.client.controller.js:

$scope.find = function() {
        $articles = Articles.query();
};

... и в моем article.server.controller.js:

var now = new Date();
var aYearFromNow = new Date(now.getTime() + 86400000*365); //add a year
var aMonthAgo = new Date(now.getTime() - 86400000*30); //subtract roughly a month

exports.list = function(req, res) { Article.find().where('date').lt(aYearFromNow).gt(aMonthAgo).sort('-created').populate('user', 'displayName').exec(function(err, articles) {
        if (err) {
            return res.send(400, {
                message: getErrorMessage(err)
            });
        } else {
            res.jsonp(articles);
        }
    });
};

Проблема в том, что это не динамичный способ ведения дел. Другими словами, я хочу, чтобы пользователь мог указать, как далеко и как далеко он хочет видеть.

Как я могу привязать к переменным (например, «aYearFromNow» и «aMonthAgo») в моем представлении клиента, которое изменит параметры запроса в моем контроллере сервера?

Ответы на вопрос(2)

Ваш ответ на вопрос