Zoeken…
Reactieve zoekopdracht
Voorbeeld code:
In main.html
<template name="test">
<input type="checkbox" id="checkbox1" name="name" value="data">Check Me
{{showData}}
</template>
In Main.js
var check_status='';
//Reactive Var Initialization
Template.main.onCreated(function (){
check_status=new ReactiveVar({});
});
Template.main.helpers({
showData : function(){
return Collection.find(check_status.get());
}
});
Template.main.events({
"change #checkbox1" : function(){
check_status.set({field: 'data'});
}
});
Uitleg:
Wanneer we de reactieve var check_status
initialiseren, check_status
we de waarde in op {}
. In de helper worden op het moment van weergave dezelfde gegevens doorgegeven aan de query Collection.find(check_status.get())
die net zo goed is als alle gegevens weergeven.
Zodra u op het selectievakje klikt, wordt de gebeurtenis geactiveerd die wordt beschreven in Template.main.events
en wordt de waarde van check_status
op {field: data}
. Omdat dit een reactieve var is , wordt de showData
sjabloon opnieuw uitgevoerd en deze keer is de query Collection.find({field: data})
, dus alleen velden, waar field
matched 'data'
wordt geretourneerd.
U moet het reactive var
pakket ( meteor add reactive-var
) toevoegen voordat u deze opdrachten gebruikt.