| | |
| | | */ |
| | | |
| | | import { map, AMap } from './index' |
| | | import util from './util' |
| | | |
| | | var _massMarks = undefined |
| | | var _labelMarks = undefined |
| | | |
| | | export default { |
| | | /** |
| | |
| | | map.add(massMarks) |
| | | }, |
| | | |
| | | createLabelMarks(img, dataList) { |
| | | createLabelMarks(img, dataList, onClick) { |
| | | if (_labelMarks) { |
| | | map.remove(_labelMarks) |
| | | _labelMarks = undefined |
| | | } |
| | | const layer = new AMap.LabelsLayer({ |
| | | zooms: [3, 20], |
| | | zIndex: 1000, |
| | | // 开启标注避让,默认为开启,v1.4.15 新增属性 |
| | | collision: true, |
| | | collision: false, |
| | | // 开启标注淡入动画,默认为开启,v1.4.15 新增属性 |
| | | animation: true |
| | | }) |
| | |
| | | image: img, |
| | | // clipOrigin: [14, 92], |
| | | // clipSize: [50, 68], |
| | | size: [30, 30], |
| | | size: [20, 20], |
| | | anchor: 'bottom-center', |
| | | angel: 0, |
| | | retina: true |
| | | }, |
| | | text: { |
| | | content: data.sceneName, |
| | | // content: data.sceneName, |
| | | direction: 'top', |
| | | offset: [0, -5], |
| | | style: { |
| | | fontSize: 16, |
| | | fontWeight: 'normal', |
| | | fontSize: 12, |
| | | // fontWeight: 'normal', |
| | | fillColor: '#fff', |
| | | strokeColor: '#333', |
| | | strokeWidth: 0, |
| | | backgroundColor: '#122b54a9' |
| | | // strokeColor: '#333', |
| | | // strokeWidth: 0, |
| | | backgroundColor: '#14428b' |
| | | } |
| | | } |
| | | } |
| | | curData.extData = { |
| | | index: i |
| | | data: data |
| | | } |
| | | |
| | | var labelMarker = new AMap.LabelMarker(curData) |
| | | labelMarker.on('click', (event) => { |
| | | console.log(labelMarker.getExtData()) |
| | | console.log(event) |
| | | util.setFitView([event.target]) |
| | | // util.setZoomSmall() |
| | | // util.setCenter(event.lnglat) |
| | | // 自定义点击事件 |
| | | if (typeof onClick === 'function') { |
| | | onClick(event.data.data.extData.data) |
| | | } |
| | | }) |
| | | |
| | | // markers.push(labelMarker); |
| | | |
| | | layer.add(labelMarker) |
| | | } |
| | | |
| | | _labelMarks = layer |
| | | return layer |
| | | }, |
| | | |