gpt4 book ai didi

javascript - Meteor - 无法在订阅中传递变量

转载 作者:行者123 更新时间:2023-12-02 16:25:21 25 4
gpt4 key购买 nike

我在使用 Meteor 的订阅时遇到问题。我的目标是根据用户输入表单中给定的条件搜索我的集合,并吐出匹配的文档。当我硬编码时,我的代码可以工作,比如说 Meteor.subscribe('byProductAndBrand',1, 2) 或任何数字而不是日期和月份。我从网站上尝试了相同的日期和月份数字,但它没有返回任何结果。我的变量似乎从 html 表单中获取值,因为它们在控制台中打印,但由于某种原因,它们没有在 subscribe 中传递。有什么建议吗?

ScheduleList 集合只是一堆具有特定小时、日期和月份的文档。

在客户端:

Template.myform.events({
'click #submit' : function(event, template){
event.preventDefault();
Session.set('day', template.find('#day').value);
Session.set('month', template.find('#month').value);
var day = Session.get('day');
console.log(day);
var month = Session.get('month');
console.log(month);
var instance = Template.instance();
if(instance.byProductAndBrandHandle != null){
instance.byProductAndBrandHandle.stop();
}
instance.byProductAndBrandHandle = Meteor.subscribe('byProductAndBrand',day, month);
}
});

在服务器中:

Meteor.publish('byProductAndBrand', function(day, month){
var d = day;
var m = month;
return ScheduleList.find({day:d},{month: m});
});

最佳答案

您的服务器发布中的查询限制不正确,应该是:

ScheduleList.find({day:d, month: m});

关于javascript - Meteor - 无法在订阅中传递变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28734565/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com