Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/442.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 流星延迟效应对反应性的影响_Javascript_Asynchronous_Meteor - Fatal编程技术网

Javascript 流星延迟效应对反应性的影响

Javascript 流星延迟效应对反应性的影响,javascript,asynchronous,meteor,Javascript,Asynchronous,Meteor,我有一个Meteor.defer在自动运行中 this.autorun(() => { Meteor.defer(() => { functionThatUsesASessionVariable(); }); }); 当会话变量更改时,此自动运行不会重新执行 this.autorun(() => { functionThatUsesASessionVariable(); }); 删除延迟,它会在会话变量更改时重新执行 this.autorun(() =&

我有一个
Meteor.defer
自动运行中

this.autorun(() => {
  Meteor.defer(() => {
    functionThatUsesASessionVariable();
  });
});
当会话变量更改时,此自动运行不会重新执行

this.autorun(() => {
  functionThatUsesASessionVariable();
});
删除
延迟
,它会在会话变量更改时重新执行

this.autorun(() => {
  functionThatUsesASessionVariable();
});
但我确实想要延迟行为和反应性。有什么办法可以两者兼得吗

====

(现在我最拿手的就是在
自动运行
的开头放一个
Session.get('sessionVar')
,不分配任何内容,只是为了触发反应。)

(但这显然不是很好,因为如果反应性直接来自函数的依赖性,它会随着时间的推移而变化,这会更好)

试试看

this.autorun(() => {
  if (Session.get('yourVar') ){
    Meteor.defer(() => {
      functionThatUsesASessionVariable();
    });
  }
});
否则,自动运行可能不会注册对会话变量的依赖关系