В Метеоре (вы отметили его) у вас есть Tracker
, который автоматически запускает функцию, если реактивный источник данных был изменен, независимо от того, кем или чем.
Чтение: https://docs.meteor.com/api/tracker.html
Теперь в Blaze (который вы также пометили) у вас также есть шаблон внутреннего трекера:
Template.myTemplate.onCreated(function (){
const instance = this
instance.autorun(() => {
// this behaves like Tracker.autorun
})
})
Как сделать переменную реактивной?
Если вы обращаетесь к реактивной переменной внутри автозапуска, вы активируете данную функцию.Нормальный Объект не является реактивным.В Meteor вы можете хранить данные, используя
ReactiveVar: https://docs.meteor.com/api/reactive-var.html
ReactiveDict: https://atmospherejs.com/meteor/reactive-dict
(Mini) Mongo Cursor: https://docs.meteor.com/api/collections.html#mongo_cursor
Доступ к данным из этих хранилищ данных запускает вычисления ваших трекеров.
Чтение этих документов должно прояснить понимание реактивной концепции Метеора, и вы сможете написать реактивный шаблон.