Google maps 谷歌地图API V3:搜索标记
我正在为一个客户构建一个谷歌地图,他们希望能够搜索我已经添加到地图中的标记 我已经构建了V3API映射,该映射从MySQL表中获取标记并将它们推送到标记数组中,但是我正在努力设置一个搜索框,该搜索框将列出与搜索查询匹配的所有内容Google maps 谷歌地图API V3:搜索标记,google-maps,search,Google Maps,Search,我正在为一个客户构建一个谷歌地图,他们希望能够搜索我已经添加到地图中的标记 我已经构建了V3API映射,该映射从MySQL表中获取标记并将它们推送到标记数组中,但是我正在努力设置一个搜索框,该搜索框将列出与搜索查询匹配的所有内容 有没有人有过这方面的经验或能够帮助我?我想你需要访问以下链接 最好的方法是维护从数据库中提取的PIN数据集,并在自己的代码中处理对它们的搜索。要实现此功能,您需要保存对正在为该数据集中的每个位置创建的pin的引用。因此,从数据库中获取位置,在本地保存,将它们添加到地图,
有没有人有过这方面的经验或能够帮助我?我想你需要访问以下链接
最好的方法是维护从数据库中提取的PIN数据集,并在自己的代码中处理对它们的搜索。要实现此功能,您需要保存对正在为该数据集中的每个位置创建的pin的引用。因此,从数据库中获取位置,在本地保存,将它们添加到地图,使用创建的pin的引用更新本地数据存储,然后将搜索挂接到数据集,最后在为该结果保存的map pin引用上居中或任何您希望发生的事情 这篇谷歌演练很好地概述了这类解决方案。
对于node.js后端服务器,如果您已经将数据注册到数据库中,那么这里是查找元素的解决方案
您也可以使用MEAN stack阅读或参考此Google地图项目。我还想找到解决方案-您有什么想法吗?幸运吗?面对同样的问题。仍然没有答案吗?我也对答案感兴趣。没有代码否决票。这个问题与开发者添加到地图上的PIN有关。不从谷歌搜索地点或POI。
// Grab all of the query parameters from the body.
var lat = req.body.latitude;
var long = req.body.longitude;
var distance = req.body.distance;
// Opens a generic Mongoose Query. Depending on the post body we will...
var query = User.find({});
// ...include filter by Max Distance (converting miles to meters)
if(distance){
// (optional)Using MongoDB's geospatial querying features. (Note how coordinates are set [long, lat]
query = query.where('location').near({ center: {type: 'Point', coordinates: [long, lat]}, OR Your own query to be specified here.
// Converting meters to miles(For mongoDB users). Specifying spherical geometry (for globe)
maxDistance: distance * 1609.34, spherical: true});
}
// ... Other queries will go here ...
// Execute Query and Return the Query Results
query.exec(function(err, users){
if(err)
res.send(err);
// If no errors, respond with a JSON of all users that meet the criteria or you can also enter the array number you want to pass.
res.json(users);
});