Meteor在刷新时运行代码,而不是渲染

时间:2016-01-30 16:00:40

标签: javascript meteor reactive-programming

我已经在这个网站上看了很多答案,但是这个让我抓狂了:

我在流星页面上使用了ace编辑器(mizzao / meteor-sharejs)。我只想反应更新它的内容。这应该通过ace.edit(“editor”)方法完成.setValue(“foo”);

现在,我无法让它发挥作用。 为什么:
 1. OnRender不是一个选项,因为它只在第一次运行时运行     渲染/未更新
 2.我不能使用帮助器,因为编辑器本身是通过把手输入的,因此在更新完成之前“无法找到”。 ({{> sharejsAce docid = docid onRender = config id =“editor”}})

所以问题是:有没有办法在反应更新之后运行像这样的代码,还是有另外一种方法可以实现我的要求?

提前致谢!

1 个答案:

答案 0 :(得分:0)

Tracker.afterFlush怎么样?

根据http://docs.meteor.com/#/full/tracker_afterflush

  

在重新运行所有无效计算之后,计划在下一次刷新期间调用的函数,或者在当前刷新中稍后调用的函数。该函数将运行一次而不是后续刷新,除非再次调用afterFlush。