map.ts 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. let BMapGL = (window as any).BMapGL;
  2. export function setMarker(markers: any[], map: any) {
  3. const points: any = []
  4. markers.forEach((item) => {
  5. const { lat, lnt: lng } = item;
  6. const point = new BMapGL.Point(lng, lat);
  7. point.data = item
  8. points.push(point)
  9. const marker = new BMapGL.Marker(point);
  10. map.addOverlay(marker);
  11. marker.addEventListener("click", function () {
  12. const infoWindow = new BMapGL.InfoWindow(
  13. `
  14. <div class="map-hover-box">
  15. <div class="map-hover-title">换热站名称:${item.name}</div>
  16. <div class="map-hover-row-item">
  17. <div class="map-hover-label">换热站编号:</div>
  18. <div class="map-hover-value">${item.code}</div>
  19. </div>
  20. <div class="map-hover-row-item">
  21. <div class="map-hover-label">位置:</div>
  22. <div class="map-hover-value">${item.position}</div>
  23. </div>
  24. </div>
  25. `,
  26. {
  27. width: 200, // 信息窗口宽度
  28. height: 100, // 信息窗口高度
  29. title: item.stationName,
  30. }
  31. );
  32. map.openInfoWindow(infoWindow, point); //开启信息窗口
  33. });
  34. });
  35. return points
  36. }
  37. export function setMarker2(markers: any[], map: any) {
  38. const points: any = []
  39. markers.forEach((item) => {
  40. const { lat, lnt: lng } = item.stationInfo;
  41. const point = new BMapGL.Point(lng, lat);
  42. points.push(point)
  43. const marker = new BMapGL.Marker(point);
  44. map.addOverlay(marker);
  45. marker.addEventListener("click", function () {
  46. const infoWindow = new BMapGL.InfoWindow(
  47. `
  48. <div class="map-hover-box">
  49. <div class="map-hover-title">环路名称:${item.name}</div>
  50. <div class="map-hover-row-item">
  51. <div class="map-hover-label">环路编号:</div>
  52. <div class="map-hover-value">${item.code}</div>
  53. </div>
  54. <div class="map-hover-row-item">
  55. <div class="map-hover-label">所属换热站:</div>
  56. <div class="map-hover-value">${item.stationInfo.name}</div>
  57. </div>
  58. <div class="map-hover-row-item">
  59. <div class="map-hover-label">一网供水温度:</div>
  60. <div class="map-hover-value">${item.outTemperature1}</div>
  61. </div>
  62. <div class="map-hover-row-item">
  63. <div class="map-hover-label">一网回水温度:</div>
  64. <div class="map-hover-value">${item.inTemperature1}</div>
  65. </div>
  66. </div>
  67. `,
  68. {
  69. width: 200, // 信息窗口宽度
  70. height: 100, // 信息窗口高度
  71. title: item.stationName,
  72. }
  73. );
  74. map.openInfoWindow(infoWindow, point); //开启信息窗口
  75. });
  76. });
  77. return points
  78. }