次の問題があります。ユーザーがいくつかの入力に基づいてフィルターで除外できるインターフェイスがあります。5つの入力があります。入力が入力されたら、その値をコレクションを返すヘルパーに追加したいと思います。私が解決できない問題は、これを動的に行う方法です。ユーザーは 1 つの入力、時には 3 つ、時には 5 つすべてを入力する場合があります。find() メソッド内では、meteor の構文のみを書き留めることができます。
mongoSelector: fieldName,
これは、find() 内でのみハードコードできることを意味します。ただし、5 つのセレクターをすべて追加するだけでは機能しません。値の 1 つが空の場合、find は何も検索せずに空の文字列を検索するためです。
条件または変数を実行することを考えましたが、必要な構文のため、両方とも find 内で機能しません。これを解決するにはどうすればよいですか?
var visitorName;
var visitorAge;
Session.set('visitorName', visitorName);
Session.set('visitorAge', visitorAgee);
Template.web.helpers({
visitors: function() {
return Visitors.find({ visitor_name: Session.get('visitorName'), visitor_age: Session.get('visitorAge') });
}
});
Template.web.events({
"change #visitor_name": function (event, template) {
visitorName = $(event.currentTarget).val();
}
});
Template.web.events({
"click #reset_filter": function (event, template) {
return Visitors.find();
$(input).val('');
}
});