У меня есть идея подачи новостей. Я пытаюсь в Метеор, но у меня проблемы с тем, что чертовски ведут себя :) I хотите, чтобы он загружал ленту новостей на загрузку/обновление страницы, но не при изменении данных. Я нашел в документации, что добавление {reactive: false}
к методу поиска коллекции должно заставить его придерживаться результатов, полученных при рендеринге, но для меня это не работает. Метеор сразу же обновляет шаблон.Установка {реактивная: ложная} при поиске коллекции в Метеор все еще обновляет шаблон
Вот код, который я получил:
На стороне сервера:
Meteor.publish("newsfeed", function() {
return Newsfeed.find({});
});
На стороне клиента:
Meteor.subscribe('newsfeed');
Template.feed.feed_data = function() {
var feed = Newsfeed.find({}, {
sort: {updated_time: -1},
limit: 10,
reactive: false
});
return feed;
};
В шаблоне:
<template name="feed">
<div id="feed-wrapper">
<ul>
{{#each feed_data}}
<li>
<div class="message">{{message}}</div>
</li>
{{/each}}
</ul>
</div>
</template>
Если я запустил Newsfeed.update({_id: 'some_random_id'}, {$set: {date_created: 'some_random_date'}})
в Dev Tools, шаблон обновит сортировку моей ленты новостей и изменяет ее.
Как я могу сделать это не так? : D
На боковой ноте; Я попытался удалить все функции автозапуска, которые у меня были в проекте, подумав, что это может быть связано с обновлением другой коллекции одновременно и что каким-то образом запускает визуализацию шаблона, но это ничего не меняет. –