質問: AngularGoogleMapsを使用して、出発地A,中継地B,目的地Cのルート表示を試みています。 しかし、以下の動作になり困っています。 1. Aを設定、Bを設定、Cを設定。実行→ルート表示される (これはOK) 2. Bを変更、A・Cはそのまま。実行→ルート表示されるが、1で表示したルートも表示されたままになる(NG。1のルート軌跡は消えてほしい) どなたか解決方法がわかる方、ご教示いただけますと幸いです。 plunkerにソースを置いています。 よろしくお願いいたします。
回答: servGoogleMaps.calcRoute()を呼ぶたびにDirectionsRendererを生成していることが原因です。 ``` var directionsDisplay = new google.maps.DirectionsRenderer(); ``` の宣言をcalcRouteの外に出して、`new google.maps.DirectionRenderer()`を一度だけ呼ぶようにすれば動きます。ついでに`new google.maps.DirectionsService()`の呼び出しも外に出したほうが良いかと思います。