Я пытаюсь добавить настраиваемую базовую карту GL JS mapbox (стилизованную коллегой) в существующий код Openlayers 3, который я написал, хотя у меня возникают проблемы с поиском решения, чтобы оба из них работали вместе. До сих пор я без проблем добавлял слои, как в примере ниже:
new ol.layer.Tile({
title: 'Satellite',
type: 'base',
visible: false,
source: new ol.source.XYZ({ //Mapbox layer with API Key
url: 'https://api.mapbox.com/styles/v1/mapbox/satellite-v9/tiles/256/{z}/{x}/{y}?access_token=API-KEY-HERE'
})
})
Однако когда я хочу добавить подобный индивидуальный стиль Mapbox GL JS, это не сработает.
new ol.layer.Tile({
title: 'CustomStyleMapboxGL',
type: 'base',
source: new ol.source.XYZ({
url: 'https://api.mapbox.com/styles/v1/itatters/cjo09902ya4z92speha95h57d.html?fresh=true&title=true&access_token=API-KEY-HERE#16.0/45.505643/-73.576557/305'
})
})
})
Если есть какие-либо способы заставить слой в стиле Mapbox GL JS работать с Openlayers 3 (так же, как я пытался в примере 2, либо иным образом), это будет очень признательно! Я пробовал использовать API Mapbox для всего кода, но столкнулся с трудностями ....



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


OpenLayers не может анализировать объекты стиля Mapbox из коробки, но библиотека ol-mapbox-style добавляет для этого поддержку. Использовать его довольно просто:
import createMap from 'ol-mapbox-style';
createMap('map', 'https://api.mapbox.com/styles/v1/itatters/cjo09902ya4z92speha95h57d.html?fresh=true&title=true&access_token=API-KEY-HERE#16.0/45.505643/-73.576557/305')
.then(function(map) {
// map is an ol/Map instance with the layers from the Mapbox style object
});
любое решение на данный момент