其实写法不难,就是理解起来恶心了一点。很容易卡到某个误区,出不来~~fffff
问题描述:
首先说明,两种方式写法是一样的。这里讲一下非聚合点的样式自定义。(非组件式的,同理)
解决方案:
html:
<!-- points:点位集合没啥说的 -->
<!-- gridSize:两点内容距离小于多少的时候聚合 -->
<!-- renderMarker:首先属性是个对象,赋值是个函数 -->
<el-amap-marker-cluster
:points="points"
:gridSize="20"
:renderMarker="renderMarker" />
js:
function renderMarker(markerObj) {
// marker 实例对象
// data 携带的一些自定义数据(在之前的点位信息list中,
// 除了渲染需要的属性之外的都会在data中保存传递)。
const { marker, data } = markerObj;
// 这里的marker对象,就是标记点的实例,后面直接进行setXXX操作就行了。
marker.setIcon(imgSrc)
const info = data[0].info;
marker.setLabel({
content: info.name,
direction: 'center',
offset: [0, 20]
})
}
认为写的好,点赞哦~~哈哈