经过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
之后插入可以抓住两个对象并合并它们的东西?