|
@@ -13,7 +13,7 @@
|
|
|
</div>
|
|
|
<div class="search-list">
|
|
|
<div class="scroll">
|
|
|
- <div v-for="(item, index) in searchState.resultList" :key="index" class="list-item" @click="selectSearchMarker(item)">
|
|
|
+ <div v-for="(item, index) in searchState.resultList" :key="index" class="list-item" @click="selectSearchMarker(item, 'gd')">
|
|
|
<i class="icon1" />
|
|
|
<div class="text1" :title="item.name">{{ item.name }}</div>
|
|
|
<!-- <div class="text2">{{ item.address }}</div>-->
|
|
@@ -134,6 +134,7 @@ import { getPointInfoComprehensiveSearch } from '@/api/globalMap';
|
|
|
import { listMenu2 } from '@/api/system/menu';
|
|
|
import { deepClone } from '@/utils';
|
|
|
import { onClickOutside } from '@vueuse/core';
|
|
|
+import gcoord from 'gcoord';
|
|
|
|
|
|
const emits = defineEmits(['switchMap', 'clickMenu', 'selectSearchMarker']);
|
|
|
const getPlaceSearch = inject('getPlaceSearch');
|
|
@@ -186,9 +187,15 @@ const changeSearchText = () => {
|
|
|
};
|
|
|
|
|
|
// 点击搜索结果,添加标注
|
|
|
-const selectSearchMarker = (item) => {
|
|
|
+const selectSearchMarker = (item, type) => {
|
|
|
+ const data = deepClone(item);
|
|
|
+ if (type === 'gd') {
|
|
|
+ const lnglat = gcoord.transform([data.longitude, data.latitude], gcoord.GCJ02, gcoord.WGS84);
|
|
|
+ data.longitude = lnglat[0];
|
|
|
+ data.latitude = lnglat[1];
|
|
|
+ }
|
|
|
searchState.showList = false;
|
|
|
- emits('selectSearchMarker', item);
|
|
|
+ emits('selectSearchMarker', data);
|
|
|
};
|
|
|
|
|
|
const menuState = reactive({
|