寻找符号来过滤所有
Looking for symbol to filter all
尝试搜索数据库时是否有搜索所有过滤器?我有多个 select 框,我想获取它们的值,然后根据这些值搜索数据。我发现每个 select 框都需要一个 if 语句来检查它是默认值(字符串)还是 selected 值(整数)。
items.find({
"person.age": obj.age, //is 'All'
"person.gender": obj.gender // is 'male'
},{
limit: this.state.limit
}).fetch()
在我上面的示例中,一个是默认值(全部),另一个是 selected 值。当我尝试搜索时,由于 'all',它 return 什么也没有。我正在寻找一个符号或其他东西来替换 'all'。
@masteram 是对的 - 你想避免包含 All
的键 - mongodb 中没有 *
。你可以同时简化你的逻辑。
以下将仅复制 obj
中不等于 All
的键,然后 运行 搜索这些键:
const person = {};
Object.keys(obj).forEach((k) => {
if (obj[k] !== 'All') person[k] = obj[k];
});
items.find(person, { limit: this.state.limit }).fetch()
尝试搜索数据库时是否有搜索所有过滤器?我有多个 select 框,我想获取它们的值,然后根据这些值搜索数据。我发现每个 select 框都需要一个 if 语句来检查它是默认值(字符串)还是 selected 值(整数)。
items.find({
"person.age": obj.age, //is 'All'
"person.gender": obj.gender // is 'male'
},{
limit: this.state.limit
}).fetch()
在我上面的示例中,一个是默认值(全部),另一个是 selected 值。当我尝试搜索时,由于 'all',它 return 什么也没有。我正在寻找一个符号或其他东西来替换 'all'。
@masteram 是对的 - 你想避免包含 All
的键 - mongodb 中没有 *
。你可以同时简化你的逻辑。
以下将仅复制 obj
中不等于 All
的键,然后 运行 搜索这些键:
const person = {};
Object.keys(obj).forEach((k) => {
if (obj[k] !== 'All') person[k] = obj[k];
});
items.find(person, { limit: this.state.limit }).fetch()