流星:我可以在模板助手之外使用反应变量吗?

时间:2016-01-14 20:45:55

标签: javascript meteor meteor-blaze

我认为每当变量发生变化时,包含反应变量(例如会话变量)的每个函数都会重新运行。当我在模板助手中使用它时会发生这种情况:

<template name="temp">
   {{reactiveHelper}}
</template>

Template.temp.helpers({
    reactiveHelper: function(){
        return Session.get('reactVar');
    }
});

但是,我希望对模板中未包含的功能具有相同的行为。 e.g:

reactiveFunction = function(){
    console.log(Session.get('reactVar'));
};

这是不是为反应而设计的,还是我弄错了?

1 个答案:

答案 0 :(得分:2)

您需要将功能包装在Tracker.autorun

http://docs.meteor.com/#/full/tracker_autorun

  Tracker.autorun(function(){
    console.log(Session.get('reactVar'));
});