Я следую примеру letsletjs interactive choropleth map, и я пытаюсь добавить взаимодействие с помощью метода resetStyle объекта GeoJson и метода fitBounds объекта Map. В листовке, эти методы вызываются с помощью ссылки на соответствующие объекты:React-sheetlet: Как можно вызвать методы GeoJson, такие как resetStyle?
var map = L.map('map');
function zoomToFeature(e) {
map.fitBounds(e.target.getBounds());
}
var geojson;
// ... our listeners
geojson = L.geoJson(...);
function resetHighlight(e) {
geojson.resetStyle(e.target);
}
Как я могу получить доступ к этим методам в реакции-листовка? Методы не существуют в объектах, возвращаемых из пользовательского взаимодействия. Я также попытался экспортировать их из реакционной листовки, но это тоже не сработает.
Это мой jsfiddle.
Я знаю, что этот же вопрос был задан месяц назад, но решение, доступ this.refs.geojson.leafletElement.resetStyle(e.target)
, больше не работает, потому что refs
не является собственностью e.target
и this
просто относится к e.target
.