|
@@ -6,6 +6,10 @@
|
|
|
<script setup lang="ts">
|
|
|
import AMapLoader from "@amap/amap-jsapi-loader";
|
|
|
import { onMounted, ref } from "vue";
|
|
|
+import axios from 'axios';
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
|
|
|
const mockData = [
|
|
|
{
|
|
@@ -32,7 +36,32 @@ const mockData = [
|
|
|
]
|
|
|
const mapEl = ref<HTMLDivElement>();
|
|
|
|
|
|
+const getDataQuest = async () => {
|
|
|
+ const res = await axios(
|
|
|
+ {
|
|
|
+ url: "https://xj-mix3d.4dkankan.com/fusion-xj/web/fireProject/queryProject",
|
|
|
+ headers: {
|
|
|
+ share: 1,
|
|
|
+ 'Content-Type': 'application/json'
|
|
|
+ },
|
|
|
+ method: 'post',
|
|
|
+ data: {
|
|
|
+ pageNum: 1,
|
|
|
+ pageSize: 10000
|
|
|
+ }
|
|
|
+ }
|
|
|
+ )
|
|
|
+ if (res.data && res.data.code === 0) {
|
|
|
+ return Promise.resolve(res.data.data.list)
|
|
|
+ } else {
|
|
|
+ return Promise.resolve([])
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
const loadMap = async () => {
|
|
|
+
|
|
|
const AMap = await AMapLoader.load({
|
|
|
plugins: ["AMap.PlaceSearch"],
|
|
|
key: "e661b00bdf2c44cccf71ef6070ef41b8",
|
|
@@ -57,12 +86,19 @@ const loadMap = async () => {
|
|
|
});
|
|
|
console.log('map', map)
|
|
|
|
|
|
- const initMakers = () => {
|
|
|
- mockData.forEach(item => {
|
|
|
+ const initMakers = async () => {
|
|
|
+ const data = await getDataQuest();
|
|
|
+ // console.log('data', data)
|
|
|
+ Array.from(data).forEach((item: any) => {
|
|
|
// console.log(item)
|
|
|
+ const latlng = item.latlng
|
|
|
+ const coord = latlng.split(',')
|
|
|
+
|
|
|
+ console.log('coord',coord)
|
|
|
+
|
|
|
const marker = new AMap.Marker({
|
|
|
icon: "//a.amap.com/jsapi_demos/static/demo-center/icons/poi-marker-default.png",
|
|
|
- position: item.pos,
|
|
|
+ position: coord,
|
|
|
title: item.title,
|
|
|
label: item.title,
|
|
|
extData: { url: item.url, id: item.id }
|