MapGL JS API | 2GIS Documentation

MapGL JS API

MapGL JS API - это JavaScript-библиотека, при помощи которой вы можете добавить карту 2GIS в ваше веб-приложение или сайт.

Библиотека позволяет:

В этом разделе описан процесс подключения библиотеки при помощи элемента <script>. Если вы используете npm, вы можете также подключить библиотеку с помощью пакета @2gis/mapgl.

Перед использованием библиотеки нужно получить ключ доступа к API. Чтобы его получить, заполните форму на dev.2gis.ru.

Чтобы подключить библиотеку MapGL JS API, добавьте следующую строку в код страницы:

<script src="https://mapgl.2gis.com/api/js/v1"></script>

Библиотека добавит глобальную переменную mapgl. Полный список доступных методов этой переменной можно посмотреть в Справочнике API.

Чтобы отобразить карту на странице, нужно создать HTML-элемент, который будет выступать в роли контейнера:

<div id="container"></div>

Так как карта будет помещена внутрь этого элемента, нужно указать его размеры:

<style>
    #container {
        width: 500px;
        height: 300px;
    }
</style>

После этого нужно инициализировать карту, вызвав метод Map() и указав идентификатор контейнера и ваш ключ доступа. Вы также можете указать начальные координаты карты и нужный масштаб. Полный список параметров можно найти в Справочнике API.

const map = new mapgl.Map('container', {
    key: 'Your API access key',
    center: [55.31878, 25.23584],
    zoom: 13,
});

Чтобы добавить маркер на карту, нужно вызвать метод Marker(), указав инстанс карты и координаты для маркера:

const marker = new mapgl.Marker(map, {
    coordinates: [55.31878, 25.23584],
});

Полный список дополнительных параметров для маркера можно найти в Справочнике API.

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <title>2GIS Map API</title>
        <meta name="description" content="Quckstart with 2GIS Map API" />
        <style>
            html,
            body,
            #container {
                margin: 0;
                width: 100%;
                height: 100%;
                overflow: hidden;
            }
        </style>
    </head>
    <body>
        <div id="container"></div>
        <script src="https://mapgl.2gis.com/api/js/v1"></script>
        <script>
            const map = new mapgl.Map('container', {
                center: [55.31878, 25.23584],
                zoom: 13,
                key: 'Your API access key',
                style: 'c080bb6a-8134-4993-93a1-5b4d8c36a59b'
            });
            const marker = new mapgl.Marker(map, {
                coordinates: [55.31878, 25.23584],
            });
        </script>
    </body>
</html>