出于某种原因,我的发现无法正常工作。这是正确的使用方法吗?我按照文档中的示例代码进行操作,它似乎有类似的模式。
var test = _.findWhere(object.entryDetails, {entryOwner_id: customer._id});
object.entryDetails具有以下值
[{ money_out: 0,
money_in: 0,
entryOwner_id: 5738b77b648115cf0410ba92,
_id: 57393d834d7ab0fa1af85600 },
{ money_out: 0,
money_in: 0,
entryOwner_id: 5738b77c648115cf0410baaa,
_id: 57393d834d7ab0fa1af855ff } ]
customer._id具有以下值
5738b77b648115cf0410ba92
显然,customer._id存在于数组中,但我的findWhere返回" undefined"
答案 0 :(得分:0)
我发现在比较查询时,下划线不使用“equals”。因此,工作将是
var filtered = _.filter(object.entryDetails, function (entry) {
return entry.entryOwner_id.equals(customer._id);});
if (filtered.length > 0) ...