Ниже описывается, что нужно сделать, чтобы использовать на картах расширенные маркеры.
Получите ключ API и включите Maps JavaScript API
Вам потребуется проект Google Cloud, в котором настроен платежный аккаунт и включен Maps JavaScript API. Подробнее о том, как настроить проект Google Cloud…
Создайте идентификатор карты
Инструкции по созданию идентификатора карты приводятся в статье об облачных стилях карт. В поле Map type (Тип карты) выберите значение JavaScript, а затем ниже укажите один из вариантов: Vector (Векторная) или Raster (Растровая).

Измените код инициализации карты
Вам понадобится идентификатор карты, который вы создали. Его можно найти на странице Maps Management (Управление картами).
Когда вам понадобится добавить расширенные маркеры, загрузите библиотеку для работы с ними. Для этого вызовите асинхронную (
async) функцию:const { AdvancedMarkerElement } = await google.maps.importLibrary("marker") as google.maps.MarkerLibrary;
При создании экземпляра карты укажите ее идентификатор в свойстве
mapId. Вы можете использоватьDEMO_MAP_IDили собственное значение.const map = new google.maps.Map(document.getElementById('map'), { center: {lat: -34.397, lng: 150.644}, zoom: 8, mapId: 'YOUR_MAP_ID' });
Проверьте функции карт (необязательно)
Для работы с расширенными маркерами требуется идентификатор карты. Если идентификатор отсутствует, расширенные маркеры загружаться не будут. Чтобы решить проблему, можно добавить прослушиватель mapcapabilities_changed, чтобы отслеживать изменение функций карты. Проверка функций карты необязательна и рекомендуется только для тестирования, устранения неполадок и реализации резервного варианта.
// Optional: subscribe to map capability changes. map.addListener('mapcapabilities_changed', () => { const mapCapabilities = map.getMapCapabilities(); if (!mapCapabilities.isAdvancedMarkersAvailable) { // Advanced markers are *not* available, add a fallback. } });