2016-02-22 97 views
1

我试图根据变量显示不同的数据集,而不更改meteor.js中的路由。根据Meteor.js中的变量值更改html

它看起来像这样:

<template name="somename"> 
{{#if form_submitted }} 
display some data 
{{else}} 
display other data 
{{/if}} 
</template> 

我试图与助手要做到这一点:

Template.somename.helpers({ 
    form_submitted = false; 
}); 

然而,当我运行它,我得到一个错误。

另外,我想要改变的变量为true单击时按钮(再刷新虚假一定的时间后)

任何想法?

回答

1

你想使用这个模板助手的组合和reactive variables

Template.somename.onCreated(function() { 
    Template.instance().isFormClicked = new ReactiveVar(false); 
}); 

Template.somename.helpers({ 
    form_submitted: function() { 
    return Template.instance().isFormClicked.get(); 
    } 
}); 

Template.somename.events({ 
    'click button': function(event, template) { 
    template.isFormClicked.set(true); 
    Meteor.setTimeout(function() { 
     template.isFormClicked.set(false); 
    }, 10000); // Reset after 10 seconds. 
    }; 
}); 
+0

我在哪里把isFormClicked变量? – user1072337

+0

你正在按照我的例子在onCreated方法中定义它。然后,您可以使用您在问题中定义的{{form_submitted}}助手。 –