ghettovoice / vuelayers

Web map Vue components with the power of OpenLayers
https://vuelayers.github.io/
MIT License
682 stars 230 forks source link

Use vl-overlay inside vl-layer-vector #501

Closed npltr62 closed 2 years ago

npltr62 commented 2 years ago

how to use vl-overlay inside vl-layer-vector like below? `

        </vl-layer-vector>`
ghettovoice commented 2 years ago

Hello @npltr62 , vl-layer-vector and vl-source-vector doesn't provide a scoped slot. You need to sync loaded features to some data field and then loop over it with vl-overlay.

Here is an example:

<template>
  <vl-map>
    <vl-layer-vector>
      <vl-source-vector :url="sourceUrl" :features.sync="vectorFeatures" />
    </vl-layer-vector>
    <vl-overlay v-for="feature in vectorFeatures" :key="feature.id" :position="feature.properties.overlayCoords">
     ...
    </vl-overlay>
  </vl-map>
</template>

<script>
export default {
  data () {
    return {
      vectorFeatures: []
    }
  },
}
</script>
npltr62 commented 2 years ago

ok thanks !