Google maps 使用方向服务确定特定机场

Google maps 使用方向服务确定特定机场,google-maps,google-maps-api-3,Google Maps,Google Maps Api 3,我使用谷歌地图方向服务创建了一个票价计算器,用于计算从到文本框中输入的两个地点之间的距离。我还指定了AutoCompleteAPI来获取要在键入时自动完成的位置列表。这是完美的工作,但现在的要求改变了。我想确定用户是否选择或输入了任何机场作为出发或出发地点。基于此,我想计算票价。我也有机场名称列表,所以我必须检查输入的地址是否来自列表。我该怎么做?您可以获取地点详细信息并检查“类型”字段是否包含机场。添加侦听器以截获自动完成的位置更改事件并分析对象的类型字段。您可以为此目的使用函数 autoco

我使用谷歌地图方向服务创建了一个票价计算器,用于计算从到文本框中输入的两个地点之间的距离。我还指定了AutoCompleteAPI来获取要在键入时自动完成的位置列表。这是完美的工作,但现在的要求改变了。我想确定用户是否选择或输入了任何机场作为出发或出发地点。基于此,我想计算票价。我也有机场名称列表,所以我必须检查输入的地址是否来自列表。我该怎么做?

您可以获取地点详细信息并检查“类型”字段是否包含机场。添加侦听器以截获自动完成的位置更改事件并分析对象的类型字段。您可以为此目的使用函数

autocomplete.addListener('place_changed', function() {
    var place = autocomplete.getPlace();
    if (!place.geometry) {
        window.alert("No details available for input: '" + place.name + "'");
        return;
    }

    if (place.types.includes("airport")) {
        //Implement your logic here
    }
});
您可以在官方文档中看到PlaceAutoComplete的示例。例如

请注意,有时用户可以选择与机场名称相似的名称,但实际上是不同的,例如与机场共享其名称的地铁站。在这种情况下,您应该应用此答案中描述的解决方法:


我希望这有帮助

有趣的否决票。只是好奇原因是什么。请你解释一下好吗?不,我没有投反对票。事实上,我已经通过在控制台上打印结果对象检查了Place类型。这很好,但我想将特定的机场名称与存储在数据库中的名称进行比较,很多时候它们的拼写略有不同。