Javascript 根据Meteor.js中的变量值更改html
我试图基于一个变量显示不同的数据集,而不改变meteor.js中的路径 看起来是这样的:Javascript 根据Meteor.js中的变量值更改html,javascript,meteor,routes,Javascript,Meteor,Routes,我试图基于一个变量显示不同的数据集,而不改变meteor.js中的路径 看起来是这样的: <template name="somename"> {{#if form_submitted }} display some data {{else}} display other data {{/if}} </template> 然而,当我运行这个时,我得到一个错误 此外,我希望在单击按钮时将变量更改为true(然后在一定时间后刷新为false) 有什么想法吗?帮助返回值的函数
<template name="somename">
{{#if form_submitted }}
display some data
{{else}}
display other data
{{/if}}
</template>
然而,当我运行这个时,我得到一个错误
此外,我希望在单击按钮时将变量更改为true(然后在一定时间后刷新为false)
有什么想法吗?帮助返回值的函数。 在您的具体情况下,它将是:
Template.somename.helpers({
form_submitted: function () {
return true;
}
});
也许您可以查看有关帮助程序的Meteor文档您需要使用模板帮助程序的组合,为此:
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.
};
});
我把isFormClicked变量放在哪里?根据我的示例,您是在onCreated方法中定义它的。然后可以使用在问题中定义的{form_submitted}}帮助器。
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.
};
});