В чем разница между следующими двумя блоками кода? Вершина работает, как и ожидалось, но ничто не делает.Meteor.deps.Context и недопустимая коллекция документов
// Initially outputs 0, but eventually outputs the # of players.
Meteor.autorun(function() {
var players = Players.find();
console.info(players.count());
});
// Outputs 0 twice. Why does this not work like the block above?
var players = Players.find();
Meteor.autorun(function() {
console.info(players.count());
});
Я тестирую это в примере лидеров в блоке Meteor.isClient.
Спасибо, Эндрю
Почему я могу делать 'var players = Players.find(); Template.leaderboard.players = function() {return players; }; 'Как шаблон повторно запрашивает данные? –
Я не уверен на 100%, но я думаю, что он что-то с курсором ленив и извлекает данные в контексте шаблона, если я добавляю '.fetch()' где угодно (в 'Meteor.autorun' или начальная инструкция var также не работает в шаблоне. – Akshat
Глядя на искровой код (система шаблонов метеор), похоже, что курсор сделан наблюдаемым, поэтому он работает с шаблоном, если курсор возвращается вспомогательным элементом шаблона – Akshat