在从 stackoverflow 获得很多帮助之后,这实际上是我第一次提出问题,所以如果我可以做得更好,请随时纠正我。
我正在尝试解析一个作为这种结构的流:
{
...
"features":{
...
"geometry": { "a": 1, "b":2...},
"properties":{"x": "foo", "y": "bar"},
...
}
...
}
进入看起来像这样的对象(每个“功能”一个):
{
"geometry":
{
"a": 1,
"b":2
...
},
"x": "foo",
"y": "bar"
}
所以抓住“几何”及其深度,以及“属性”。现在,我的代码如下所示:
request(featuresUrl)
.pipe(JSONStream.parse(['features', true, /properties|geometry/]))
.pipe(index.defaultPipeline())
.pipe(index.add())
.on('finish', function() {
console.log(`items loaded`);
resolve();
})
问题是我有两个不同的对象被索引,一个带有几何图形,另一个带有属性。如果可能的话,我希望它是一个单独的对象,将两者合并。
什么是最好的解决方案?改变我解析 JSONStream 的方式?或者在之后插入一些东西.parse
会抓住两个对象并合并它们?