Реактивность только на стороне клиента с Метеором?

У меня есть коллекция, опубликованная на сервере и автоматически подписанная на клиенте. Я'Я хотел бы установитьвыбран» элемента в сеансе и обновите шаблон, чтобы отобразить только выбранный элемент, но, похоже, это можно сделать только с помощью туда-обратно на сервер (что совершенно не нужно).

Общие:

var Missions = new Meteor.Collection('missions');

Клиент:

Template.missionList.missions = function() {
    var currMission = Session.get('selectedMission');
    var searchMission = {};
    if(currMission)
    {
        searchMission['_id'] = currMission;
    }
    return Missions.find(searchMission);
};
Template.missionList.events({
    'click div.mission': function (e, t) {
        Session.set('selectedMission', 
            this._id == Session.get('selectedMission') ? null : this._id
        );
    }
});
Template.mission.isSelected = function() {
    return this._id == Session.get('selectedMission');
};
Meteor.autosubscribe(function () {
    Meteor.subscribe("missions");
});

Сервер:

Meteor.publish('missions', function() {
    // there are really some filters here, but removed for simplicity
    return Missions.find(); 
});

Шаблон:


    
    {{#each missions}}
        {{> mission}}
    {{/each}}
    



    details

Мое требование дляMissions.find() вTemplate.missionList.missions фильтровать кэшированные результаты на стороне клиента, а не повторно запрашивать с сервера, но я могуКажется, я не нашел флаг или настройки, которые позволили бы мне сказать minimongo использовать только доступные в настоящее время данные.

Я также не совсем уверен, если это то, что я должен делать, я начал с использования jQuery, чтобы скрыть невыбранные миссии, но обдумал Meteor, и вполне естественно использовать данные и реактивность для управления выбором / локальным -Фильтрация.

Есть ли способ избежать обхода или я просто неправильно его использую?

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

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