【问题标题】:Meteor reactivity without autorun()?没有自动运行()的流星反应?
【发布时间】:2017-02-07 06:48:38
【问题描述】:

这是我在 angular-meteor 应用程序中的根组件:

export class RootComponent implements OnInit {
    playlists:Mongo.Cursor<any>;

    ngOnInit():any {
        this.playlists = Playlists.find();
    }

}

当我从另一个 angular(2) 组件更新 Playlist 集合时,我看到我渲染播放列表的视图更新了。 该特定视图无法访问其他组件中的任何其他变量,因此很明显该视图正在更新,因为集合播放列表正在更新。

我想知道如果没有 ngOnInit 中的代码更新视图而不在 Tracker.autorun 中,这是怎么回事?

【问题讨论】:

  • 您看到的是发布/订阅机制在起作用。仅当您有想要做出反应的东西时,您才需要使用 Tracker。 Meteor 做了一些魔法,让你的生活更轻松

标签: meteor angular reactive-programming angular-meteor


【解决方案1】:

Tracker.autorun() 是一种围绕您希望响应的数据显式创建计算对象的方法。但是,某些事情在 Meteor 中会自动响应:

  • 会话变量
  • 模板助手
  • 发布/订阅报表
  • 集合游标

查看这里了解更多信息:https://www.discovermeteor.com/blog/reactivity-basics-meteors-magic-demystified/

【讨论】:

  • 实际上我意识到游标默认也是反应式的。所以请编辑你的答案以包括光标
猜你喜欢
  • 1970-01-01
  • 2017-09-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多