Переглянути джерело

Merge branch 'hotfix' of gitadmin/tuoheng_pilot_web into master

tags/v1.0.0
zhangtao 1 рік тому
джерело
коміт
18735e79d9
3 змінених файлів з 43 додано та 38 видалено
  1. +1
    -1
      src/utils/map/GMap.js
  2. +40
    -37
      src/views/task-manage/components/MapComp.vue
  3. +2
    -0
      src/views/task-manage/components/UserModal.vue

+ 1
- 1
src/utils/map/GMap.js Переглянути файл

@@ -2,7 +2,7 @@ import AMapLoader from '@amap/amap-jsapi-loader'

export default AMapLoader.load({
'key': '709c024e3faa4a92473b9d847ca87702',
'version': '2.0',
'version': '1.4.4',
'plugins': ['AMap.ToolBar', 'AMap.AutoComplete', 'AMap.PlaceSearch', 'AMap.Geocoder'],
AMapUI: {
version: '1.1',

+ 40
- 37
src/views/task-manage/components/MapComp.vue Переглянути файл

@@ -6,54 +6,57 @@

<script setup name="mapComp">
import GMap from '@/utils/map/GMap'
import { nextTick } from 'vue'

const emit = defineEmits(['mapEmit'])
let marker = null

GMap.then((AMap) => {
const map = new AMap.Map('mapComp', {
zoom: 13,
center: [118.773319, 31.828123]
})

// 添加缩放工具
const toolbar = new AMap.ToolBar()
map.addControl(toolbar)

// 搜索
AMapUI.loadUI(['misc/PoiPicker'], function(PoiPicker) {
const poiPicker = new PoiPicker({
input: 'pickerInput'
nextTick(() => {
GMap.then((AMap) => {
const map = new AMap.Map('mapComp', {
zoom: 13,
center: [118.773319, 31.828123]
})

poiPicker.on('poiPicked', ({ item }) => {
const inp = document.getElementById('pickerInput')
inp.value = item.name
// map.setCenter(item.location) // 移动到中心位置
if (marker) map.remove(marker)
marker = new AMap.Marker({
title: item.address,
icon: '//vdata.amap.com/icons/b18/1/2.png'
// 添加缩放工具
const toolbar = new AMap.ToolBar()
map.addControl(toolbar)

// 搜索
AMapUI.loadUI(['misc/PoiPicker'], function(PoiPicker) {
const poiPicker = new PoiPicker({
input: 'pickerInput'
})

marker.setMap(map)
marker.setPosition(item.location)
map.setCenter(item.location)
poiPicker.on('poiPicked', ({ item }) => {
const inp = document.getElementById('pickerInput')
inp.value = item.name
// map.setCenter(item.location) // 移动到中心位置
if (marker) map.remove(marker)
marker = new AMap.Marker({
title: item.address,
icon: '//vdata.amap.com/icons/b18/1/2.png'
})

emit('mapEmit', item.location)
marker.setMap(map)
marker.setPosition(item.location)
map.setCenter(item.location)

emit('mapEmit', item.location)
})
})
})
map.on('click', ({ lnglat }) => {
if (marker) map.remove(marker) // 只取一次maker点
marker = new AMap.Marker({
position: new AMap.LngLat(lnglat.lng, lnglat.lat),
offset: new AMap.Pixel(-10, -10),
icon: '//vdata.amap.com/icons/b18/1/2.png'
map.on('click', ({ lnglat }) => {
if (marker) map.remove(marker) // 只取一次maker点
marker = new AMap.Marker({
position: new AMap.LngLat(lnglat.lng, lnglat.lat),
offset: new AMap.Pixel(-10, -10),
icon: '//vdata.amap.com/icons/b18/1/2.png'
})
map.add(marker)
emit('mapEmit', lnglat)
})
map.add(marker)
emit('mapEmit', lnglat)
})
}).catch(e => console.log(e))
}).catch(e => console.log(e))
})

</script>


+ 2
- 0
src/views/task-manage/components/UserModal.vue Переглянути файл

@@ -69,6 +69,7 @@
</Modal>

<n-modal
v-if="showStart"
v-model:show="showStart"
:mask-closable="false"
preset="dialog"
@@ -81,6 +82,7 @@
</n-modal>

<n-modal
v-if="showEnd"
v-model:show="showEnd"
:mask-closable="false"
preset="dialog"

Завантаження…
Відмінити
Зберегти