我真的很喜欢underscore mixin数据查询,underscore-data。这对我目前正在进行的一个项目来说是完美的。但是要么我不能让它工作,要么我不知道如何使用该工具,RQL implementation。如何使用下划线数据(以前称为underscore.query)
pc = {
columns: [
{
title: "3column-left",
text: "text",
image: null
}
]
}
我要测试是否/列和/列/文本存在。但是,我可以让图书馆提供真实或虚假的价值。例如,这两个查询返回原pc
对象:
_.query(pc, 'columns&columns/text')
_.query(pc, 'columns&columns/fubar')
试图测试给定值时,这是同样的事情。这两个查询都会返回原始对象,尽管第二个查询不应返回任何内容。
_.query(pc, 'columns/title', '3column-left')
_.query(pc, 'columns/title', 'doesntExist')
任何洞察力的赞赏。
感谢您的反馈。但是这些查询不起作用。将文本引用为列的属性不是问题。因此,请参阅[下划线数据自述文件](https://github.com/dvv/underscore-data/blob/master/README-rql.md)中的第一个示例。 (a = 1,b:2},{a:3,b:2}],'(a = 1 | b = 2)')=== [{a:1,b :2},{a:3,b:2}]'。请注意,该查询未引用a = 1或b = 2应位于数组的第一个元素中的事实。这会挫败查询的目的,目的是找到这个元素。所以使用你的查询,我得到空的结果。 – Nutritioustim 2012-03-21 14:50:01
我不清楚你在查询中想达到什么目的。 “a = 1或b = 2应该在数组的第一个元素中”是什么意思? – jlb 2012-03-22 11:18:30
Heyya。对,所以我给出的查询是该自述文件中的第一个示例。并且查询'(a = 1 | b = 2)'应该对数据结构'[{a:1,b:2},{a:3,b:2}]'进行操作。你说我必须知道索引才能查询结构。我说这打破了查询的目的。我实际上向作者提交了一个错误报告。 [见这里](https://github.com/dvv/underscore-data/issues/1)。希望这是有道理的。希望作者修复它,因为这将是一个很好的工具。 – Nutritioustim 2012-03-22 23:50:31