如何检索流星集合中对象内的数组子集?
How to retrieve a subset of array within an object in a meteor collection?
希望有人能帮忙!我在流星中有一个集合,其中包含以下格式的温度读数数组的对象:
"temp_readings": [
{
"reading_time": {
"$date": "2015-01-18T11:54:00.700Z"
},
"temp_F": 181.76
},
{
"reading_time": {
"$date": "2015-01-18T11:55:00.700Z"
},
"temp_F": 187.16
},
{
"reading_time": {
"$date": "2015-01-18T11:56:00.700Z"
},
"temp_F": 190.76
},
{
"reading_time": {
"$date": "2015-01-18T11:57:00.700Z"
},
"temp_F": 196.16
}
]
我可以在我的客户端 meteor 代码中检索这个完整的数组,但我现在只想根据用户设置的 date/time 读取这个数组的一个子集。因此,例如检索数组的子集,该子集仅包含等于或晚于“2015-01-18T11:56:00.700Z”的条目...我知道我可能可以使用选择性 publish/subscribe 方法做一些事情,但现在客户端是否有一种简单的方法来检索此数据子集?也许一些 javascript 方法可以提供帮助?
提前致谢,
瑞克
// or however you fetch your document
var doc = MyCollection.findOne();
if (!doc)
return [];
// ensure temps is an array
var temps = doc.temp_readings || [];
// return an array of temp readings where the date is > someOtherDate
return _.filter(temps, function(temp) {
return temp.reading_time.$date > someOtherDate;
});
希望有人能帮忙!我在流星中有一个集合,其中包含以下格式的温度读数数组的对象:
"temp_readings": [
{
"reading_time": {
"$date": "2015-01-18T11:54:00.700Z"
},
"temp_F": 181.76
},
{
"reading_time": {
"$date": "2015-01-18T11:55:00.700Z"
},
"temp_F": 187.16
},
{
"reading_time": {
"$date": "2015-01-18T11:56:00.700Z"
},
"temp_F": 190.76
},
{
"reading_time": {
"$date": "2015-01-18T11:57:00.700Z"
},
"temp_F": 196.16
}
]
我可以在我的客户端 meteor 代码中检索这个完整的数组,但我现在只想根据用户设置的 date/time 读取这个数组的一个子集。因此,例如检索数组的子集,该子集仅包含等于或晚于“2015-01-18T11:56:00.700Z”的条目...我知道我可能可以使用选择性 publish/subscribe 方法做一些事情,但现在客户端是否有一种简单的方法来检索此数据子集?也许一些 javascript 方法可以提供帮助?
提前致谢, 瑞克
// or however you fetch your document
var doc = MyCollection.findOne();
if (!doc)
return [];
// ensure temps is an array
var temps = doc.temp_readings || [];
// return an array of temp readings where the date is > someOtherDate
return _.filter(temps, function(temp) {
return temp.reading_time.$date > someOtherDate;
});