我希望在10秒后自动重定向到下一个屏幕。 但仅当用户尚未离开页面时。 如果模板仍然存在,我如何测试回调方法(" alive" var代码如下)?
我的Coffeescript:
Template.handBackDevice.onRendered(->
delay 10000, ->
if alive
Router.go('/dropOff/confirmDropOff')
)
答案 0 :(得分:0)
您应该在模板函数之外,在同一文件中,reactive variable或reactive dictionary内部(或者作为Session变量)定义alive
标志,如下所示(反应变量案例):
var isAlive = new ReactiveVar(false);
在呈现模板后将其设置为true
Template.name.onRendered = function(){
isAlive.set(true);
//add your delayed function
}
挂钩模板destroyed
功能并在那里更新alive
标志:
Template.handBackDevice.onDestroyed = function(){
isAlive.set(false)
};
然后您可以使用
在延迟功能中进行检查if (isAlive.get()){
//do your stuff
}