mtl-js-sdk
Version:
61 lines (51 loc) • 1.5 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.amapLocation = amapLocation;
var _loadScript = require("./loadScript");
var _mapConfig = require("./mapConfig");
function amapLocation(obj) {
(0, _loadScript.loadScript)(_mapConfig.amapURL, function () {
var geolocation;
var map = new AMap.Map('', {
resizeEnable: true
});
var geolocationProps = {
enableHighAccuracy: true,
timeout: 10000,
buttonPosition: 'RB',
zoomToAccuracy: true
};
AMap.plugin('AMap.Geolocation', function () {
geolocation = new AMap.Geolocation(geolocationProps);
map.addControl(geolocation);
geolocation.getCurrentPosition(function (status, result) {
if (status == 'complete') {
onComplete(result);
} else {
onError(result);
}
});
}); //解析定位结果
function onComplete(data) {
var addr = data.formattedAddress;
var lng = data.position.lng;
var lat = data.position.lat;
var accuracy = data.accuracy;
var res = {
address: addr,
accuracy: accuracy,
longitude: lng,
latitude: lat
};
obj.success && obj.success(res);
obj.complete && obj.complete("定位成功");
} //解析定位错误信息
function onError(err) {
obj.fail && obj.fail(err);
obj.complete && obj.complete("定位失败");
} //销毁地图实例
map && map.destroy();
});
}