我想我收到每5秒标记的阵列利用RxJS observables
和jQuery $.ajax
RxJS谷歌地图标记
从数据库中获取只有新"Google Map" Markers
。 当数组内的数据发生变化时,即添加了新的标记,我只需要过滤掉新的标记。
var oldArray = [["ObjA",3455,643523,2],["ObjB",5346,2134,1],["ObjC",5341,7135,0]];
var newArray = [["ObjA",3455,643523,2],["ObjD",2384,4791,3],["ObjB",5346,2134,1],["ObjC",5341,7135,0],["ObjF",2631,7228,4]];
所以在这里从newArray
我需要过滤掉["ObjD",2384,4791,3]
和["ObjF",2631,7228,4]
我不知道它是如何完成的,能不能只利用RxJS在全部完成。
我真的很感激,如果有人能带领我走向正确的方向!
var observable = Rx.Observable
.interval(5000)
.flatMap(function() {
return Rx.Observable
.from($.ajax({url: "https://somedomain.com/json"}).promise())
})
.filter(x => !!x === true)
.distinctUntilChanged();
observable.subscribe((response) => {
var newMarker = $.parseJSON(response.data);
});
你可以发布你尝试过的东西和你卡在哪里的片段吗? – paulpdaniels
@paulpdaniels,谢谢你的回复。对此,我真的非常感激。我用代码片段更新了我的问题。我一直试图以许多不同的方式完成这项任务,但没有成功。这是我最后一次尝试的代码。请不要严格评判我,因为我对RxJS非常陌生,并且尽力以合适的方式快速获得它。 再次感谢! –
因此,当你从服务器返回数据时,你被困住的部分是怎么做的? – paulpdaniels