2017-02-03 3 views
0
directionDisplay.setMap(null); 

funktioniert nicht in meiner Situation.Javascript/ionic - Google Maps entfernt keine Anweisungen

Arbeiten in ionic/corodova-Umgebung, Xcode ios-Projekt.

Die App ist das gleiche Konzept von Uber.

Eine App muss alle 3 Sekunden Daten aus der Datenbank abrufen, um zu prüfen, ob eine neue Bestellung vorliegt. Wenn es eine neue Reihenfolge gibt, erhält es den Ort einer Bestellung und den Ort eines Fahrers.

Dann setzt die Markierungen und zeigt Richtungen zwischen ihnen.

Es gibt ein Intervall, das überwacht, wenn die Bestellung abgeschlossen wurde, sobald es abgeschlossen ist sollte es die Richtungen und Markierungen entfernen. Marker werden entfernt, aber die Anweisungen bleiben auf der Karte.

Der Code ist sehr lang und StackOverFlow lässt mich hier nicht einfügen.

Die Konsole sagt, dass es keine Variable finden kann, das ist seltsam, da die Variable da ist.

Lassen Sie mich wissen, wo ich sonst den Code teilen kann, um zu zeigen.

+0

Wir können jeden Code, ohne sie zu sehen, nicht wirklich viel helfen. Übrigens, anstatt alle 3 Sekunden die Datenbank zu überprüfen, überprüfen Sie 'Firebase' von Google, es hat eine Echtzeitdatenbank, so dass Sie die Datenbank nicht alle 3 Sekunden abfragen müssen. – mXX

+0

@mXX vielen dank für suggestion, wir werden uns darum kümmern. Ich habe das Problem mit dem folgenden Code behoben. Danke noch einmal. –

Antwort

0

Dieser Code das Problem behoben:

var gmarkers = [];// opening array 

function removeMarkers(){ // creating function to remove everything on the map including the markers and directions 
for(i=0; i<gmarkers.length; i++){ 
gmarkers[i].setMap(null); 
} 
} 

... other code is here 

//inserting near the variable directionDisplay the code to push it into array 
var directionsDisplay = new google.maps.DirectionsRenderer; 

     gmarkers.push(directionsDisplay);