DEV Community

Cover image for Show Custom Lat/Long Location using Google Map API
Thu Htet Tun
Thu Htet Tun

Posted on

Show Custom Lat/Long Location using Google Map API

Today, I am assigned a task from my today work (Jira).
That was I have to query available shop location and nearby rider location from database and show them on a map with its own information.

For this, I used google map api. The host application is used Laravel and yes, JavaScript is a must to involve in this case.

I won't tell you all my process coz it'll be boring and long.
So, I'm going to tell you only basic steps you can follow.

First step,

  1. Go to google developer console and get an api key.

  2. add div tag in your blade template.
    map data will be render into that document using that id (map).

   <div id="map"></div>
Enter fullscreen mode Exit fullscreen mode
  1. import google map script tag. You've got api key from step 1 right?. Add that api key to {your_api_key} place. 'myMap' will be the callback function name that we'll add later.
   <script src="{your_api_key}&callback=myMap"></script>
Enter fullscreen mode Exit fullscreen mode
  1. Add myMap function. In this case, we add a pair of lat/long location as center and marker on map. In order to show on map, we render on map data on our div using document.getElementById('map'). It has a lot of cool features google.maps so if you are interested to test, you can do more research on this.
  function myMap() {

            var center = {lat: 16.81265991142744, lng: 96.12810673385788};
            var map = new google.maps.Map(document.getElementById('map'), {
                zoom: 12,
                center: center
            let marker =new google.maps.Marker({
                 position: {lat: 16.81265991142744, lng: 96.12810673385788},
                map: map,
              icon: ''
Enter fullscreen mode Exit fullscreen mode

Yeah, you can test with multiple locations and markers and so on. That'll be pretty fun.

Thanks for your time.
See you on another blog.

Top comments (0)