Eh bien, pour remplir la sélection, vous devez modifier le {{#each}} en sélection, comme ceci.
<select>
<option disabled selected>Choose option</option>
{{#each company}}
<option>{{category}}</option>
{{/each}}
</select>
Parce que si vous mettez le {{#each}}
en haut du <select>
tag meteor créera 1 sélection pour chaque entreprise.
Et l'assistant de l'entreprise doit être simple comme un simple return company.find();
Maintenant, si vous souhaitez filtrer, il existe de nombreuses options pour y parvenir, l'une d'entre elles pourrait être celle-ci.
J'aime utiliser ReactiveDict(); , donc je vais utiliser sur cet exemple.
Installez-le meteor add reactive-dict
Template.example.onCreated(function(){
var self = this;
self.example = new ReactiveDict();
self.example.setDefault( 'valueToFilter' , null);
});
Maintenant, sur un événement comme change
, procédez comme suit.
Template.example.events({
'change select' : function( event, template ) {
var instance = Template.instance();
instance.example.set( 'valueToFilter' event.target.value ); //or use $('select').val() whatever you like to take the value;
}
})
Affichez maintenant les résultats.
Template.example.helpers({
showSelectedValues : function(){
var instance = Template.instance();
return Companies.find( { name : instance.example.get( 'valueToFilter' )} );
}
})
Cela devrait vous donner une vue d'ensemble, bonne chance !