Ответ 1
Использование Meteor.setTimeout()
гарантирует, что этот код является значком Fibers. Подробнее о волокнах: https://github.com/laverdet/node-fibers
В Meteor, зачем использовать Meteor.setTimeout() только для обычного setTimeout()?
Какова ценность использования Meteor.setTimeout(), а не только vanilla setTimeout или setInterval?
Использование Meteor.setTimeout()
гарантирует, что этот код является значком Fibers. Подробнее о волокнах: https://github.com/laverdet/node-fibers
На клиенте между ними нет разницы.
На сервере, когда код запускается для определенного пользователя (например, при вызове метода), вам нужно использовать Meteor.setTimeout
вместо window.setTimeout
, чтобы Метеор помнил, для какого пользователя должна быть вызвана функция. В то время, когда вызывается функция, переданная в Meteor.setTimeout
, и когда она вызывается, другие пользователи могут вызывать методы на сервере, вместо этого Meteor.userId
вместо этого возвращать свой идентификатор пользователя. Meteor.setTimeout
изменится так, чтобы Meteor.userId
возвращал идентификатор пользователя для пользователя, когда был вызван вызов Meteor.setTimeout
перед вызовом переданной ему функции.
Это дизайнерское решение.