Ich arbeite in Meteor versuchen, eine reaktive var zu verwenden, um den Inhalt im Hauptbereich zwischen zwei Tabs zu wechseln. Ich konnte den Inhalt erfolgreich selbst testen, daher bin ich mir ziemlich sicher, dass das Problem im reaktiven var-Code liegt. Speziell denke ich, das Problem ist mit der Registerkarte: function(), aber nach vielen Suchen und Lesen der Dokumentation habe ich keine Lösung gefunden.Meteor einfache reaktive var
Die relevante js:
Template.content.onCreated(function() {
this.currentTab = new ReactiveVar('form');
});
Template.content.helpers({
tab: function() {
return Template.instance().currentTab.get();
}
});
Template.content.events({
'click .nav li': function (event, template) {
var currentTab = $(event.target).closest("li");
currentTab.addClass("active");
$(".nav li").not(currentTab).removeClass("active");
Template.currentTab.set();
}
});
Die entsprechende html:
<template name ="content">
<ul class ="nav">
<li data-template="form"><a href="#">Form</a></li>
<li data-template="results"><a href="#">Results</a></li>
</ul>
{{ > Template.dynamic template=tab}}
</template>
Vielen Dank! Das macht viel mehr Sinn. Funktioniert immer noch nicht vollständig, aber hilfreich, um es besser zu verstehen. Sie sagen, es sollte das erste Mal funktionieren, es zeigt nie etwas anderes als die Navigationsleiste. Wenn ich das Formular oder die Ergebnisvorlage manuell einfüge funktioniert es aber nicht wenn ich Tab benutze. Irgendwelche Einsichten? –
Haben Sie eine Vorlage namens "form", die Sie erwarten, wo "Template.dynamic" ist? – RevMen