@dean9703111/vue-mapbox-geocoder

0.4.0 • Public • Published

Vue-mapbox-geocoder

Vue-mapbox plugin for mapbox-gl-geocoder support.

Usage

First of all you need to install Mapbox GL and Vue-mapbox. See vue-mapbox doc

Install mabbox-gl-geocoder and vue-mapbox-geocoder:

npm i @mapbox/mapbox-gl-geocoder vue-mapbox vue-mapbox-geocoder

Now you can add geocoder control like other controls:

<template>
  <MglMap
    :accessToken="accessToken"
    :mapStyle="mapStyle"
  >
    <MglGeocoderControl
      <-- props needed for GeolocateControl -->
      :accessToken="accessToken"
      :input.sync="defaultInput"
      @results="handleSearch"
    />
  </MglMap>
</template>

<script>
import {
  MglMap,
  MglNavigationControl,
  MglGeolocateControl
} from 'vue-mapbox'

import MglGeocoderControl from 'vue-mapbox-geocoder'

export default {
  name: 'App',

  components: {
    MglMap,
    MglGeocoderControl
  },
  data() {
    return {
      accessToken: 'YOUR_ACCESS_TOKEN',
      mapStyle: 'YOUR_MAP_STYLE',
      defaultInput: 'Bodhgaya'
    }
  },
  methods: {
    handleSearch(event) {
      console.log(event)
    }
  }
}
</script>

Options for mapbox-gl-geocoder described here can be passed via props.

Additionaly you can pass syncronized prop input as in example below. It will be passed to mapbox-gl-geocoder as default input value. Each time you change value of this prop, mapbox-gl-geocoder .setInput method is called.

Same for proximity prop that internally invokes mapbox-gl-geocoder setProximity method.

Also you can call query method to query search and get results programmatically.

Package Sidebar

Install

npm i @dean9703111/vue-mapbox-geocoder

Weekly Downloads

0

Version

0.4.0

License

none

Unpacked Size

196 kB

Total Files

15

Last publish

Collaborators

  • dean9703111