我有一个变量存储,它将决定从查询中排除哪些字段:
excludeFields = {
Contact: {
Address: 0,
Phone: 0
}
}
我需要将这个转换为点表示法,以便与Mongo的findOne
一起使用,例如:
things.findOne({}, {fields: {'Contact.Address': 0, 'Contact.Phone': 0}})
仅传递 excludeFields
是不起作用的,会导致错误 "Projection values should be one of 1, 0, true, or false"
things.findOne({}, {fields: excludeFields})
我是否需要编写自己的函数将分层结构转换为平面点符号表示法?还是JavaScript中有一些我不知道的机制可以实现这一点?
typeof(val) === "object" && val !== null && !(val instanceof Date)
。 - Philipp Sumi