# 信息窗口

# 示例

TIP

使用注意:需要在 close 事件中将绑定的 target 设置为 null

<template>
  <div class="mapDiv">
    <tdt-map :center="center" :zoom="zoom">
      <tdt-marker :position="marker1" @click="openInfowindow" extData="marker1"></tdt-marker>
      <tdt-marker :position="marker2" @click="openInfowindow" extData="marker2"></tdt-marker>
      <tdt-infowindow
        :target="infowindow.target"
        :content="infowindow.content"
        @close="infowindow.target = null"
      ></tdt-infowindow>
    </tdt-map>
  </div>
</template>

<script>
export default {
  name: "ex-infowindow",
  data() {
    return {
      center: [113.280637, 23.125178],
      zoom: 11,
      marker1: [113.280637, 23.125178],
      marker2: [113.320037, 23.125178],
      infowindow: {
        content: "123",
        target: [113.200637, 23.125178]
      }
    };
  },
  methods: {
    openInfowindow({ target, extData }) {
      this.infowindow = {
        target,
        content: `<span>${extData}</span>`
      };
    }
  }
};
</script>

<style scoped>
.mapDiv {
  width: 100%;
  height: 300px;
}
</style>

# 属性

属性 类型 默认值 说明
minWidth Number 50 弹出框的最小宽度。
maxWidth Number 300 弹出框的最大宽度。
maxHeight Number 设置后,如果内容超过弹出窗口的给定高度则产生一个可以滚动的容器。
autoPan Boolean false 是否开启信息窗口打开时地图自动移动(默认关闭)。
closeButton Boolean true 控制弹出窗口中出现的关闭按钮。
offset Array [0,7] 弹出窗口位置的补偿值。在同一图层中打开弹出窗口时对于控制锚点比较有用。
autoPanPadding Array [5,5] 在地图视图自动平移产生后弹出窗口和地图视图之间的边缘。
closeOnClick Boolean false 是否开启点击地图关闭信息窗口(默认关闭)。
content String/HTMLElement "" 信息窗口的内容。可以是字符串或 HTML
target Object/Array 打开信息窗口的覆盖物对象或经纬度数组,传入数组时自行调整 offset 参数

# 事件

事件 参数 描述
close {type, target, lnglat } 信息窗口被关闭时触发此事件。
open {type, target, lnglat } 信息窗口被打开时触发此事件。
clickclose {type, target } 点击信息窗口的关闭按钮时触发此事件。