164 lines
5.2 KiB
JavaScript
164 lines
5.2 KiB
JavaScript
var t = require("../../@babel/runtime/helpers/interopRequireDefault")(require("../../@babel/runtime/regenerator")), e = require("../../@babel/runtime/helpers/asyncToGenerator"), o = getApp(), a = require("../../utils/login.js");
|
|
|
|
Page({
|
|
data: {
|
|
markers: [],
|
|
longitude: null,
|
|
latitude: null,
|
|
weather: {},
|
|
totop: !1,
|
|
shop: {},
|
|
showshop: !1,
|
|
zoomsize: 14,
|
|
showLocation: !0
|
|
},
|
|
onLoad: function(t) {
|
|
var e = this;
|
|
wx.showLoading({
|
|
title: ""
|
|
}), a.pageStart(o).then(function(t) {
|
|
e.getuserLocation();
|
|
});
|
|
},
|
|
getuserLocation: function() {
|
|
var o = this;
|
|
return e(t.default.mark(function e() {
|
|
var a;
|
|
return t.default.wrap(function(t) {
|
|
for (;;) switch (t.prev = t.next) {
|
|
case 0:
|
|
return t.next = 2, o.getlocation();
|
|
|
|
case 2:
|
|
a = t.sent, console.log("result:", a), a && (o.latitude = a.latitude, o.longitude = a.longitude),
|
|
o.getData();
|
|
|
|
case 6:
|
|
case "end":
|
|
return t.stop();
|
|
}
|
|
}, e);
|
|
}))();
|
|
},
|
|
latitude: null,
|
|
longitude: null,
|
|
onShareAppMessage: function() {},
|
|
tolocation: function() {
|
|
var t = wx.createMapContext("map");
|
|
console.log("moveToLocation"), t.moveToLocation({
|
|
success: function(t) {
|
|
console.log(t);
|
|
},
|
|
fail: function(t) {
|
|
wx.showModal({
|
|
title: "用户未授权",
|
|
content: "请开启相关权限,以便更好使用小程序哦!",
|
|
showCancel: !0,
|
|
success: function(t) {
|
|
t.confirm ? wx.openSetting({
|
|
success: function(t) {
|
|
console.log("authSetting", t), t.authSetting || that.showLocationFail();
|
|
}
|
|
}) : t.cancel;
|
|
},
|
|
fail: function(t) {
|
|
that.showLocationFail();
|
|
}
|
|
});
|
|
}
|
|
});
|
|
},
|
|
clickMaker: function(t) {
|
|
wx.openLocation({
|
|
latitude: latitude,
|
|
longitude: longitude,
|
|
scale: 18
|
|
});
|
|
},
|
|
callUs: function() {
|
|
if (!o.globalData.servicetel) return !1;
|
|
wx.makePhoneCall({
|
|
phoneNumber: "" + o.globalData.servicetel
|
|
});
|
|
},
|
|
getData: function() {
|
|
var t = this;
|
|
a.request(o.globalData.config.map, {
|
|
longitude: this.longitude,
|
|
latitude: this.latitude
|
|
}).then(function(e) {
|
|
wx.hideLoading(), 200 == e.code ? (e.data.list.forEach(function(t, e) {
|
|
t.id = e, t.width = 32, t.height = 32, t.latitude = 1 * t.latitude, t.longitude = 1 * t.longitude,
|
|
t.iconPath = "/img/location-blue.png", t.callout = {
|
|
content: t.name
|
|
};
|
|
}), t.setData({
|
|
weather: e.data.weather,
|
|
markers: e.data.list,
|
|
longitude: 1 * e.data.longitude,
|
|
latitude: 1 * e.data.latitude,
|
|
zoomsize: e.data.zoomsize
|
|
})) : wx.showModal({
|
|
title: "提示",
|
|
content: e.message,
|
|
confirmColor: "#EF8176",
|
|
cancelColor: "#999999"
|
|
});
|
|
}).catch(function(t) {
|
|
wx.hideLoading();
|
|
});
|
|
},
|
|
bindmarkertap: function(t) {
|
|
console.log(t);
|
|
this.data.markers.forEach(function(t) {
|
|
t.iconPath = "/img/location-blue.png";
|
|
});
|
|
for (var e = 0; e < this.data.markers.length; e++) if (this.data.markers[e].id == t.detail.markerId) {
|
|
console.log(e), this.data.markers[e].iconPath = "/img/location-red.png", this.data.markers[e].width = 50,
|
|
this.data.markers[e].height = 50, this.setData({
|
|
shop: Object.assign({}, this.data.markers[e]),
|
|
showshop: !0
|
|
});
|
|
break;
|
|
}
|
|
},
|
|
closeshop: function() {
|
|
this.setData({
|
|
showshop: !1
|
|
});
|
|
},
|
|
changeTop: function() {
|
|
this.setData({
|
|
totop: !this.data.totop
|
|
});
|
|
},
|
|
getlocation: function() {
|
|
return new Promise(function(t, e) {
|
|
wx.getLocation({
|
|
type: "wgs84",
|
|
success: function(e) {
|
|
e.latitude, e.longitude;
|
|
t(e);
|
|
},
|
|
fail: function(e) {
|
|
t();
|
|
}
|
|
});
|
|
});
|
|
},
|
|
showLocationFail: function() {
|
|
wx.showToast({
|
|
title: "位置失败",
|
|
icon: "none",
|
|
duration: 1e3
|
|
});
|
|
},
|
|
toMap: function() {
|
|
wx.openLocation({
|
|
latitude: this.data.shop.latitude,
|
|
longitude: this.data.shop.longitude,
|
|
name: this.data.shop.name,
|
|
address: this.data.shop.address
|
|
});
|
|
}
|
|
}); |