Commit 7615a005 authored by zhengke's avatar zhengke

页面修改

parent da117cd2
<style> <style>
.markers_labels{ .markers_labels {
margin-left: -24px !important; margin-left: -24px !important;
margin-top: -43px !important; margin-top: -43px !important;
} }
.gm-svpc,.gm-style-mtc,.gm-style-cc{
.gm-svpc,
.gm-style-mtc,
.gm-style-cc {
display: none; display: none;
} }
</style> </style>
...@@ -15,33 +18,33 @@ ...@@ -15,33 +18,33 @@
</template> </template>
<script> <script>
export default { export default {
props:["dataList"], props: ["dataList"],
name: 'tripMap', name: 'tripMap',
data(){ data() {
return{ return {
show:false, show: false,
directionsService: new google.maps.DirectionsService(), directionsService: new google.maps.DirectionsService(),
directionsDisplay: new google.maps.DirectionsRenderer(), directionsDisplay: new google.maps.DirectionsRenderer(),
map:{}, map: {},
} }
}, },
watch:{ watch: {
dataList(newValue,old){ dataList(newValue, old) {
this.mapBuild() this.mapBuild()
} }
}, },
created(){ created() {
}, },
destroyed: function() { destroyed: function () {
}, },
mounted(){ mounted() {
console.log(this.dataList,'datalist组件'); console.log(this.dataList, 'datalist组件');
this.mapBuild() //初始化实例之后调用 this.mapBuild() //初始化实例之后调用
}, },
methods:{ methods: {
getDetailsRoutes(source,destination,map){ getDetailsRoutes(source, destination, map) {
service = new google.maps.DistanceMatrixService(); service = new google.maps.DistanceMatrixService();
service.getDistanceMatrix({ service.getDistanceMatrix({
origins: [source], origins: [source],
...@@ -51,7 +54,8 @@ ...@@ -51,7 +54,8 @@
avoidHighways: false, avoidHighways: false,
avoidTolls: false avoidTolls: false
}, function (response, status) { }, function (response, status) {
if (status == google.maps.DistanceMatrixStatus.OK && response.rows[0].elements[0].status != "ZERO_RESULTS") { if (status == google.maps.DistanceMatrixStatus.OK && response.rows[0].elements[0].status !=
"ZERO_RESULTS") {
var distance = response.rows[0].elements[0].distance.text; var distance = response.rows[0].elements[0].distance.text;
var duration = response.rows[0].elements[0].duration.text; var duration = response.rows[0].elements[0].duration.text;
var dvDistance = document.getElementById("siteinfo_modal_label"); var dvDistance = document.getElementById("siteinfo_modal_label");
...@@ -65,13 +69,16 @@ ...@@ -65,13 +69,16 @@
}) })
}, },
// 地图实例 // 地图实例
mapBuild(){ mapBuild() {
if (this.dataList && this.dataList.length > 0) {
let lat = parseFloat(this.dataList[0].lat) let lat = parseFloat(this.dataList[0].lat)
let lng = parseFloat(this.dataList[0].lng) let lng = parseFloat(this.dataList[0].lng)
// let lat = parseFloat(this.dataList[0].lat) // let lat = parseFloat(this.dataList[0].lat)
// let lng = parseFloat(this.dataList[0].lng) // let lng = parseFloat(this.dataList[0].lng)
let center = {lng: lng, lat: lat} let center = {
lng: lng,
lat: lat
}
//创建地图实例,zoom是缩放比例 //创建地图实例,zoom是缩放比例
this.map = new google.maps.Map(document.getElementById('map_canvas'), { this.map = new google.maps.Map(document.getElementById('map_canvas'), {
zoom: 7, zoom: 7,
...@@ -111,21 +118,23 @@ ...@@ -111,21 +118,23 @@
// }) // })
this.directionsDisplay.setMap(this.map); this.directionsDisplay.setMap(this.map);
this.calcRoute() this.calcRoute()
}
}, },
calcRoute: function() { // 创建路径规划 calcRoute: function () { // 创建路径规划
// 分解数据 获得起 止 以及中间数据 // 分解数据 获得起 止 以及中间数据
console.log(this.dataList,'加载后....'); console.log(this.dataList, '加载后....');
let lat = parseFloat(this.dataList[0].lat) let lat = parseFloat(this.dataList[0].lat)
let lng = parseFloat(this.dataList[0].lng) let lng = parseFloat(this.dataList[0].lng)
let elat = parseFloat(this.dataList[this.dataList.length-1].lat) let elat = parseFloat(this.dataList[this.dataList.length - 1].lat)
let elng = parseFloat(this.dataList[this.dataList.length-1].lng) let elng = parseFloat(this.dataList[this.dataList.length - 1].lng)
let _this = this; let _this = this;
let start = lat + ',' + lng; let start = lat + ',' + lng;
let end = elat + ',' + elng; let end = elat + ',' + elng;
let waypoints = []; let waypoints = [];
if (this.dataList.length > 2) { if (this.dataList.length > 2) {
this.dataList.forEach((x, index) => { this.dataList.forEach((x, index) => {
if (index >= 1 && index !== (this.dataList.length-1)) { if (index >= 1 && index !== (this.dataList.length - 1)) {
let obj = { let obj = {
location: x.lat + ',' + x.lng location: x.lat + ',' + x.lng
} }
...@@ -134,16 +143,16 @@ ...@@ -134,16 +143,16 @@
}); });
} }
let request = { // 组装连线数据 let request = { // 组装连线数据
origin:start, // 起 origin: start, // 起
destination:end, // 止 destination: end, // 止
travelMode: google.maps.TravelMode.DRIVING, travelMode: google.maps.TravelMode.DRIVING,
// waypoints: [{location:"30.5226477,104.05806469999993"},{location:"30.67416759999999,104.04721970000003"}] // 中间点数据 // waypoints: [{location:"30.5226477,104.05806469999993"},{location:"30.67416759999999,104.04721970000003"}] // 中间点数据
}; };
if (waypoints.length > 0) { if (waypoints.length > 0) {
request.waypoints = waypoints request.waypoints = waypoints
} }
console.log(waypoints,'waypointsss') console.log(waypoints, 'waypointsss')
_this.directionsService.route(request, function(result, status) { _this.directionsService.route(request, function (result, status) {
if (status == google.maps.DirectionsStatus.OK) { if (status == google.maps.DirectionsStatus.OK) {
_this.directionsDisplay.setDirections(result); _this.directionsDisplay.setDirections(result);
} }
...@@ -152,4 +161,3 @@ ...@@ -152,4 +161,3 @@
}, },
} }
</script> </script>
\ No newline at end of file
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment