У меня есть коллекция из ~ 60 документов в моей коллекции под названием Books. Каждый раз, когда я вызываю publishFunction
, сервер возвращает 10 случайных документов из Книги.Как ДЕЙСТВИТЕЛЬНО удалять Minimongo/локальный кеш Meteor's?
Раньше я обновлял страницу, чтобы получить publishFunction
, и все работает нормально (я получил 10 случайных документов на клиенте), но обновление занимает некоторое время &, это просто неуклюже.
Теперь я звоню Meteor.subscribe('publishFunction')
от клиента, чтобы динамически обновлять подписку, выполняя то, что мне нужно сделать с новыми документами в обратном вызове onReady
.
Но есть проблема.
publishFunction
возвращает 10 элементов каждый раз, гарантируется (проверяется путем вывода счетчиков с сервера). Сервер работает должным образом.
Но на клиенте ... Я не получаю эти 10 новых элементов на клиенте. Я получу их при первой загрузке страницы (как и раньше), но затем каждый раз, когда publishFunction
вызывается из клиента (что я делаю после вызова Books._collection.remove({});
, чтобы очистить старые документы), я получаю чуть меньше 10 документов показывая на клиенте (опять же, несмотря на то, что publishFunction
одновременно возвращает 10 документов).
Обычно это происходит примерно так: 10, 7, 5, 3, 2, 0 (количество элементов возвращается после последующих обновлений).
У меня нет большого количества документов в книгах, поэтому я подозреваю, что локальный кеш не ДЕЙСТВИТЕЛЬНО очищается Books._collection.remove({});
. Это объясняет постепенно уменьшающееся количество новых книг, поскольку Метеор все еще видит кэшированные документы и не добавляет все 10 предметов, поскольку некоторые из них уже существуют.
Как я могу ДЕЙСТВИТЕЛЬНО очистить локальный кеш без изменения маршрутов?
EDIT: Я пробовал clear()
и reset()
от помощника менеджера Arunoda, но это не помогло ... такое же поведение.
Какая функция 'stop()'? 'Meteor.stop()'? 'MyCollection.stop()'? – FreePender
«Это было действительно непонятно в документах (для меня)». Цикл ... продолжается ..._ –