From 9d6bdb7f226548b75501f53e45063d747faf3dd2 Mon Sep 17 00:00:00 2001
From: xiebin <123456>
Date: Fri, 30 Sep 2022 11:03:49 +0800
Subject: [PATCH] 任务地图路线回显
---
pages/taskinfo/detail.vue | 69 +++++++------
manifest.json | 195 ++++++++++++++++++++------------------
2 files changed, 137 insertions(+), 127 deletions(-)
diff --git a/manifest.json b/manifest.json
index 5cac501..4b85fc6 100644
--- a/manifest.json
+++ b/manifest.json
@@ -1,95 +1,104 @@
{
- "name" : "Rider",
- "appid" : "__UNI__C29A206",
- "description" : "",
- "versionName" : "1.0.0",
- "versionCode" : "100",
- "transformPx" : false,
- /* 5+App特有相关 */
- "app-plus" : {
- "safearea" : {
- "bottom" : {
- "offset" : "none"
- }
- },
- "usingComponents" : true,
- "nvueCompiler" : "uni-app",
- "compilerVersion" : 3,
- "splashscreen" : {
- "alwaysShowBeforeRender" : true,
- "waiting" : true,
- "autoclose" : true,
- "delay" : 0
- },
- /* 模块配置 */
- "modules" : {
- "Geolocation" : {}
- },
- /* 应用发布信息 */
- "distribute" : {
- /* android打包配置 */
- "android" : {
- "permissions" : [
- "<uses-feature android:name=\"android.hardware.camera\"/>",
- "<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
- "<uses-permission android:name=\"android.permission.ACCESS_COARSE_LOCATION\"/>",
- "<uses-permission android:name=\"android.permission.ACCESS_FINE_LOCATION\"/>",
- "<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",
- "<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
- "<uses-permission android:name=\"android.permission.CALL_PHONE\"/>",
- "<uses-permission android:name=\"android.permission.CAMERA\"/>",
- "<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
- "<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
- "<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
- "<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
- "<uses-permission android:name=\"android.permission.MODIFY_AUDIO_SETTINGS\"/>",
- "<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
- "<uses-permission android:name=\"android.permission.READ_LOGS\"/>",
- "<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",
- "<uses-permission android:name=\"android.permission.RECORD_AUDIO\"/>",
- "<uses-permission android:name=\"android.permission.VIBRATE\"/>",
- "<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
- "<uses-permission android:name=\"android.permission.WRITE_CONTACTS\"/>",
- "<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"
- ]
- },
- /* ios打包配置 */
- "ios" : {},
- /* SDK配置 */
- "sdkConfigs" : {
- "ad" : {},
- "geolocation" : {
- "system" : {
- "__platform__" : [ "ios", "android" ]
- }
- }
- }
- }
- },
- /* 快应用特有相关 */
- "quickapp" : {},
- /* 小程序特有相关 */
- "mp-weixin" : {
- "appid" : "wxc256e348c4032ebd",
- "setting" : {
- "urlCheck" : false
- },
- "usingComponents" : true
- },
- "mp-alipay" : {
- "usingComponents" : true
- },
- "mp-baidu" : {
- "usingComponents" : true
- },
- "mp-toutiao" : {
- "usingComponents" : true
- },
- "h5" : {
- "template" : "template.h5.html",
- "router" : {
- "mode" : "hash",
- "base" : "/rider/"
- }
- }
+ "name": "Rider",
+ "appid": "__UNI__C29A206",
+ "description": "",
+ "versionName": "1.0.0",
+ "versionCode": "100",
+ "transformPx": false,
+ /* 5+App特有相关 */
+ "app-plus": {
+ "safearea": {
+ "bottom": {
+ "offset": "none"
+ }
+ },
+ "usingComponents": true,
+ "nvueCompiler": "uni-app",
+ "compilerVersion": 3,
+ "splashscreen": {
+ "alwaysShowBeforeRender": true,
+ "waiting": true,
+ "autoclose": true,
+ "delay": 0
+ },
+ /* 模块配置 */
+ "modules": {
+ "Geolocation": {}
+ },
+ /* 应用发布信息 */
+ "distribute": {
+ /* android打包配置 */
+ "android": {
+ "permissions": [
+ "<uses-feature android:name=\"android.hardware.camera\"/>",
+ "<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
+ "<uses-permission android:name=\"android.permission.ACCESS_COARSE_LOCATION\"/>",
+ "<uses-permission android:name=\"android.permission.ACCESS_FINE_LOCATION\"/>",
+ "<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",
+ "<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
+ "<uses-permission android:name=\"android.permission.CALL_PHONE\"/>",
+ "<uses-permission android:name=\"android.permission.CAMERA\"/>",
+ "<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
+ "<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
+ "<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
+ "<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
+ "<uses-permission android:name=\"android.permission.MODIFY_AUDIO_SETTINGS\"/>",
+ "<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
+ "<uses-permission android:name=\"android.permission.READ_LOGS\"/>",
+ "<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",
+ "<uses-permission android:name=\"android.permission.RECORD_AUDIO\"/>",
+ "<uses-permission android:name=\"android.permission.VIBRATE\"/>",
+ "<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
+ "<uses-permission android:name=\"android.permission.WRITE_CONTACTS\"/>",
+ "<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"
+ ]
+ },
+ /* ios打包配置 */
+ "ios": {},
+ /* SDK配置 */
+ "sdkConfigs": {
+ "ad": {},
+ "geolocation": {
+ "system": {
+ "__platform__": ["ios", "android"]
+ }
+ }
+ }
+ }
+ },
+ /* 快应用特有相关 */
+ "quickapp": {},
+ /* 小程序特有相关 */
+ "mp-weixin": {
+ "appid": "wxc256e348c4032ebd",
+ "setting": {
+ "urlCheck": false
+ },
+ "usingComponents": true
+ },
+ "mp-alipay": {
+ "usingComponents": true
+ },
+ "mp-baidu": {
+ "usingComponents": true
+ },
+ "mp-toutiao": {
+ "usingComponents": true
+ },
+ "h5": {
+ "template": "template.h5.html",
+ "router": {
+ "mode": "hash",
+ "base": "/rider/"
+ },
+ "sdkConfigs": {
+ "maps": {
+ "amap": {
+ "key": "7fa69abe1defd5888bb85bc736cda874",
+ "securityJsCode": "8ac9e5f522c62ed6e3a5800a87b0d140",
+ "serviceHost": ""
+ }
+ }
+ }
+ }
}
diff --git a/pages/taskinfo/detail.vue b/pages/taskinfo/detail.vue
index 29dc7c0..d150ea9 100644
--- a/pages/taskinfo/detail.vue
+++ b/pages/taskinfo/detail.vue
@@ -1,7 +1,7 @@
<template>
<view class="content">
<u-top-tips ref="uTips"></u-top-tips>
- <map style="width: 100%; height: 30vh;" scale="14" :latitude="latitude" :longitude="longitude"
+ <map id="map" style="width: 100%; height: 30vh;" scale="14" :latitude="latitude" :longitude="longitude"
:polyline="polyline">
<!-- <cover-view class="dingwBut" @click="getSelfLocation">
<cover-image src="../../static/images/taskinfo/map/img/dingwei.png"></cover-image>
@@ -67,41 +67,28 @@
return {
id: 0,
taskinfoData: {},
+ _mapContext: null,
latitude: '',
longitude: '',
- polyline: [{
- // LINESTRING(115.91024735502 28.6783047633229, 115.916073731654 28.6741777439167,
- // 115.908426611165 28.6739956695312)
- points: [
- // {
- // latitude: 28.6783047633229,
- // longitude: 115.91024735502
- // },
- // {
- // latitude: 28.6741777439167,
- // longitude: 115.916073731654
- // },
- // {
- // latitude: 28.6739956695312,
- // longitude: 115.908426611165
- // }
- ],
+ polyline: null,
+ //路线默认属性
+ polylineObj: {
color: "#10a4ff", //线的颜色
width: 10, //线的宽度
dottedLine: false, //是否虚线
arrowLine: false, //带箭头的线 开发者工具暂不支持该属性
- }]
+ },
}
},
methods: {
getSelfLocation() {
- var that = this;
+ var _that = this;
uni.getLocation({
type: 'gcj02',
isHighAccuracy: true,
success(res) {
- that.latitude = res.latitude
- that.longitude = res.longitude
+ _that.latitude = res.latitude
+ _that.longitude = res.longitude
}
})
},
@@ -109,19 +96,30 @@
var _that = this
getDetail(_that.id).then(res => {
_that.taskinfoData = res.data;
- //处理地图路线 //
- let routeRange = _that.taskinfoData.routeRange.replace('LINESTRING', '')
- .replace('\(', '').replace('\)', '')
- let ranges = routeRange.split(',')
- for (var i = 0; i < ranges.length; i++) {
- let postion = ranges[i].split(' ')
- _that.polyline[0].points.push({
- longitude: postion[0],
- latitude: postion[1]
- })
+ let routeRange = _that.taskinfoData.routeRange
+ if (routeRange) {
+ //处理地图路线 //
+ routeRange = _that.taskinfoData.routeRange.replace('LINESTRING', '')
+ .replace('\(', '').replace('\)', '')
+ let ranges = routeRange.split(',')
+ var pointsArr = []
+ for (var i = 0; i < ranges.length; i++) {
+ let postion = ranges[i].split(' ')
+ var points = {
+ longitude: postion[0],
+ latitude: postion[1]
+ }
+ pointsArr.push(points)
+
+ }
+ _that.polylineObj.points = pointsArr
+ _that.polyline = [_that.polylineObj]
+ _that.longitude = ranges[0].split(' ')[0]
+ _that.latitude = ranges[0].split(' ')[1]
+
+ } else {
+ _that.getSelfLocation() //如果没有绘制路线显示当前位置地图
}
- _that.longitude = _that.polyline[0].points[0].longitude
- _that.latitude = _that.polyline[0].points[0].latitude
})
}
@@ -131,6 +129,9 @@
this.id = options.id
this.getTaskinfoDetail()
}
+ },
+ onReady() {
+ console.log(this.polyline)
}
}
</script>
--
Gitblit v1.9.3