来自浏览器包的Meteor地理位置
我尝试在atmosphere和web上搜索任何包,以获取用户使用桌面浏览器访问应用程序时的地理位置(纬度、经度),但找不到任何包。现有的应用程序只提供移动服务,例如。有人能告诉我如何通过Meteor从桌面获取用户的地理位置(纬度、经度)吗?谢谢我知道这是一篇老文章,但是我想把它写下来 您可以尝试使用该软件包。它有地理位置和许多其他HTML5API可供使用 在客户端上安装软件包之后来自浏览器包的Meteor地理位置,meteor,Meteor,我尝试在atmosphere和web上搜索任何包,以获取用户使用桌面浏览器访问应用程序时的地理位置(纬度、经度),但找不到任何包。现有的应用程序只提供移动服务,例如。有人能告诉我如何通过Meteor从桌面获取用户的地理位置(纬度、经度)吗?谢谢我知道这是一篇老文章,但是我想把它写下来 您可以尝试使用该软件包。它有地理位置和许多其他HTML5API可供使用 在客户端上安装软件包之后 var html5api = new Html5Api(); 然后请求地理位置权限: var geoLocatio
var html5api = new Html5Api();
然后请求地理位置权限:
var geoLocation = html5api.geoLocation();
拥有权限后,获取位置
if (geoLocation) {
geoLocation.getLocation(function(err, res){
if (err) console.log(err);
else console.log(res);
});
}
结果会是这样的:
{
accuracy: 30 // in meters
altitude: null
altitudeAccuracy: null
heading: null
latitude: <latitude>
longitude: <longitude>
speed: null
timestamp: 1457901207220
}
常规Javascript
navigator.geolocation.getCurrentPosition
应该可以正常工作。你试过了吗?你可以在网站上读到更多的东西,那里已经有一个来自Meteor development group的不错的软件包。
if (geoLocation) {
geoLocation.watch(function (err, res) {
if (err) console.log(err);
else {
// the result will be in res.result
console.log(res.result);
Meteor.setInterval(function () {
// to stop watching a location, you need a watchId which is available in res.watchId when the watch started
geoLocation.stopWatching(res.watchId);
}, 30 * 1000);
}
});
}