Javascript 是否可以在meteor中用变量替换.find()查询?

Javascript 是否可以在meteor中用变量替换.find()查询?,javascript,meteor,syntax,Javascript,Meteor,Syntax,问题: 我不是javascript/meteor语法方面的专家 我想要实现的目标: 将.find()中的查询替换为变量以简化代码 我的代码: 嗯。。这段代码基本上搜索集合。它将查找已安装的项目或具有特定名称的已安装项目 Template.xxx.helpers({ case_a: () => { if(A === true){ var case1 = case_1.find({ isInstalled: true }).fetch(); var case

问题:

我不是javascript/meteor语法方面的专家

我想要实现的目标:

将.find()中的查询替换为变量以简化代码

我的代码:

嗯。。这段代码基本上搜索集合。它将查找已安装的项目或具有特定名称的已安装项目

Template.xxx.helpers({
  case_a: () => {
    if(A === true){
      var case1 = case_1.find({ isInstalled: true }).fetch();
      var case2 = case_2.find({ isInstalled: true }).fetch();            
    } else {
      var case1 = case_1.find({ "name": {$regex: (".*"+searchText+".*"), $options: 'i'}, isInstalled: true }).fetch();
      var case2 = case_2.find({ "name": {$regex: (".*"+searchText+".*"), $options: 'i'}, isInstalled: true }).fetch();
    }
    var ret = case1.concat(case2);
    return ret;
  }
});
我想知道的是:

分配到查询中的正确语法

Template.xxx.helpers({
  case_a: () => {
    var query = {};
    if(A === true){
      query = { isInstalled: true };      
    } else {
      query = { "name": {$regex: (".*"+searchText+".*"), $options: 'i'}, isInstalled: true };
    }
    var case1 = case_1.find({ query }).fetch();
    var case2 = case_2.find({ query }).fetch();            
    var ret = case1.concat(case2);
    return ret;
  }
});

任何帮助都将不胜感激

因为
query
是一个对象,它可以直接传递给
find()
方法

case_1.find(query)
而不是

case_1.find({query})