Как предотвратить прокрутку контента, когда Meteor обновляет коллекцию

Мой вопрос очень похож наэтот а такжевон тот но не совсем то же самое.

У меня есть следующий шаблон в моем приложении Meteor:

<template name="items">
    <div class="mainframe">
    <h3>Available items:</h3>
        <div class="items-table-container">
            <table class="table table-hover">
                <tbody>
                    {{#each all_items}}
                       {{> item}}
                    {{/each}}
                </tbody>
            </table>
        </div>
    </div>
    <div class="btn-group">
    <button id="create" class="btn">Create new item</button>
    </div>
</template>

Функция шаблона тривиальна:

Template.items.all_items = function () {
    return Items.find({}, {sort: {name: 1}}).fetch();
}

Существует также событие, связанное с#create кнопка, которая вставляет новый элемент в коллекцию элементов и работает нормально.

Теперь самая важная часть - это CSS:

.items-table-container {
    height:340px;
    overflow-y: scroll;
}

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

Вопрос в том, как предотвратить автоматическое обновление для одного шаблона? Я думаю, что в этом конкретном случае мне действительно нужно что-то вроде традиционного обновления веб-страницы: это нормально, если пользователь не видит добавленный элемент сразу, а после перезагрузки страницы.

Другая идея состоит в том, чтобы сделать какую-то нумерацию страниц вместо прокручиваемого контента. Я думаю, что это решило бы проблему, однако это было бы намного сложнее, и я хотел бы избежать этого.

Я думаю, что в идеале я бы хотел сказать Метеору, что я хочу, чтобы Метеор обновил шаблон не при изменении модели, а по запросу.

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

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