2017-07-06 90 views
0

我有一个小函数可以在Google地图上获取路线。当我有英文地址(我的意思是在英格兰或其他欧盟\北美国家的两条街道之间)时,它工作正常。但是当我有俄文地址写英文时,我遇到了问题。像实施例:使用谷歌地图构建路径

  • 从= '白俄罗斯,明斯克,Russianova,1'
  • 到= '白俄罗斯,明斯克,Nikiforova,1'。

可以找到关于谷歌地图这些地址,但我不能建设的途径和NOT_FOUND状态的结果。

当我使用图书馆将英语翻译成俄语时,这并不是问题,但这并不能解决所有问题。例如:

  • Belarussia => MinskBelarus => Brest工作
  • Belarus => MinskBelarussia, Brest工作

而且它不与标记在所有的工作。

您能否帮助我建立使用地址的路线,而不必猜测某个城市的哪种形式与另一个城市的相互作用?

我现在使用的功能是这样的:

function getRout(from, to) { 
 
    var directionsService = new google.maps.DirectionsService; 
 
    var directionsDisplay = new google.maps.DirectionsRenderer; 
 
    var map = new google.maps.Map(document.getElementById('map'), { 
 
    zoom: 7, 
 
    center: { 
 
     lat: 53.9, 
 
     lng: 27.6 
 
    } 
 
    }); 
 
    directionsDisplay.setMap(map); 
 
    directionsService.route({ 
 
    origin: from, 
 
    destination: to, 
 
    travelMode: google.maps.TravelMode.DRIVING 
 
    }, function(response, status) { 
 
    if (status === google.maps.DirectionsStatus.OK) { 
 
     directionsDisplay.setDirections(response); 
 
    } else { 
 
     window.alert(status); 
 
    } 
 
    }); 
 
}

回答

0

尝试拼写不同的看法: '白俄罗斯,明斯克,Rusijanava,1'

+0

它工作正常,但有时人在英文上写俄文街道名称时会出错,默认的google地图可以使用它。我还有一个'Bielorussia,布雷斯特'的问题。 – EvgeniyL

+1

@EvgeniyL - 你看过Places API吗?您可以实施_ [自动填充](https://developers.google.com/maps/documentation/javascript/examples/places-autocomplete)_(或_ [自动填充表单](https://developers.google.com/ maps/documentation/javascript/examples/places-autocomplete-addressform)_),以帮助用户找到正确的拼写。 –

+0

不在我的情况下,我从远程数据库获取地址 – EvgeniyL