atualizando um mapa de folheto dando Erro: O contêiner do mapa já foi inicializado
Parece que você está tentando reiniciar um mapa existente... Os quadros de problemas aqui são mais para trabalhar com bugs e sugestões de novos recursos. StackOverflow(http://stackoverflow.com/questions/tagged/leaflet) é o melhor lugar para solucionar problemas de uso da biblioteca. Se você acredita que isso é um bug, poste seu caso de exemplo em um JSFiddle ou outro site de demonstração.
Parece que o problema está relacionado à implementação no MVVM e não a um bug. Tentarei pesquisar alguns exemplos de MVVM usando o folheto.
mesmo problema aqui... o que pode ser?
@ralexrdz talvez um contêiner que você inicialize mais de uma vez?
@mourner O html é basicamente html carregando js e css e um div com id="map". E o único js que eu tenho é
map.setView([19,34, -99,15], 12);
L.tileLayer('https://api.tiles.mapbox.com/v4/{id}/{z}/{x}/{y}.png?access_token={accessToken}', {
atribuição: 'Dados do mapa © contribuidores do OpenStreetMap , CC-BY-SA , Imagery © Mapbox ',
maxZoom: 18,
id: 'mapboxMapId,
accessToken: 'mapboxAccessToken'
}).addTo(mapa);
Como pode ser que um contêiner seja inicializado antes?
estou tendo o mesmo problema, estou usando o folheto no React
Isso será um bug do folheto de reação provavelmente @epicallan
@danzel estou usando o react, seu bug do folheto de reação, apenas fiz algumas soluções hacky
@epicallan Você pode explicar o que você fez? Eu tenho o mesmo problema com React e Leaflet.
Antes de inicializar o mapa verifique se o mapa já foi iniciado ou não
var container = L.DomUtil.get('map');
if(contêiner != null){
container._leaflet_id = null;
}
@Dipinrajc Com este método, você não está disponível para arrastar com o mouse no mapa.
Alguma ideia de como arrastar o mapa novamente com o mouse @adrielstar ?
Eu nós essa @fillipefeitosa .
HTML:
< div id="mapa" ></div>
mapa de renderização:
document.getElementById('map').innerHTML = "< div id='map' style='width: 100%; height: 100%;'>";
para recarregar o conteúdo da div onde o mapa de renderização.
Hoop isso vai te ajudar também
Obrigado amigo, mas não funcionou. Ele substituiu meu var map
pelo div e o mapa não carrega
Antes de inicializar o mapa verifique se o mapa já foi iniciado ou não
var container = L.DomUtil.get('map');
if(contêiner != null){
container._leaflet_id = null;
}
existe um método de folheto existente para isso?
mesmo problema comigo :(
Antes de inicializar o mapa verifique se o mapa já foi iniciado ou não
var container = L.DomUtil.get('map');
if(contêiner != null){
container._leaflet_id = null;
}existe um método de folheto existente para isso?
@enzojimenez , você pode criar um método para isso, como criei abaixo
function initializingMap() // chame este método antes de inicializar seu mapa.
{
var container = L.DomUtil.get('map');
if(contêiner != null){
container._leaflet_id = null;
}
}
Para resolver o problema, defina:
import * as Map from 'folheto';
@ViewChild ('map') mapElement: ElementRef;
mapa: Map.Map;
this.map = Map.map (this.mapElement.nativeElement, {
maxZoom: 18
});
Solução aqui: https://www.designlimbo.com/leaflet-ionic-3-and-map-container-is-already-initialized/
como dito aqui , esta seria a melhor maneira de fazer isso:
if (map != undefined) {
map.remove();
}
Antes de inicializar o mapa verifique se o mapa já foi iniciado ou não
var container = L.DomUtil.get('map');
if(contêiner != null){
container._leaflet_id = null;
}
Você é um anjo
Comentários muito úteis
Antes de inicializar o mapa verifique se o mapa já foi iniciado ou não
var container = L.DomUtil.get('map');
if(contêiner != null){
container._leaflet_id = null;
}