fix: 地图标记点实现方式更改

This commit is contained in:
JiangQiming 2023-01-05 17:42:20 +08:00
parent 37689880f1
commit 0323594841
2 changed files with 9 additions and 15 deletions

View File

@ -23,6 +23,7 @@
@click="clickMap"
>
<el-amap-search-box visible @select="selectPoi" />
<el-amap-marker :position="position" />
</el-amap>
{{ mapPoint }}
</div>
@ -49,7 +50,7 @@ const props = defineProps({
});
const emit = defineEmits<EmitProps>();
//
// ()
const inputPoint = computed({
get: () => {
return props.point;
@ -67,7 +68,7 @@ const handleModalSubmit = () => {
modalVis.value = false;
};
//
// ()
const mapPoint = ref('');
const zoom = ref(12);
@ -75,6 +76,9 @@ const center = ref([106.55, 29.56]);
let map: any = null;
let marker: any = null;
//
const position = ref<number[] | string[]>([]);
/**
* 地图初始化
* @param e
@ -83,11 +87,7 @@ const initMap = (e: any) => {
map = e;
const pointStr = mapPoint.value as string;
if (marker) map.remove(marker);
marker = new AMap.Marker({
position: pointStr ? pointStr.split(',') : center.value,
});
map.add(marker);
position.value = pointStr ? pointStr.split(',') : center.value;
};
/**
@ -96,13 +96,7 @@ const initMap = (e: any) => {
*/
const clickMap = (e: any) => {
mapPoint.value = `${e.lnglat.lng},${e.lnglat.lat}`;
if (marker) map.remove(marker);
marker = new AMap.Marker({
position: [e.lnglat.lng, e.lnglat.lat],
});
map.add(marker);
position.value = [e.lnglat.lng, e.lnglat.lat];
};
/**

View File

@ -107,7 +107,7 @@ const props = defineProps({
//
itemType: {
type: String,
default: () => 'object',
default: () => 'geoPoint',
},
//
options: {