Leaflet: 였λ₯˜: 맡 μ»¨ν…Œμ΄λ„ˆκ°€ 이미 μ΄ˆκΈ°ν™”λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

에 λ§Œλ“  2015λ…„ 10μ›” 24일  Β·  20μ½”λ©˜νŠΈ  Β·  좜처: Leaflet/Leaflet

였λ₯˜: 맡 μ»¨ν…Œμ΄λ„ˆκ°€ 이미 μ΄ˆκΈ°ν™”λ¨μ„ ν‘œμ‹œν•˜λŠ” 전단지 맡 μƒˆλ‘œ κ³ μΉ¨

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

지도λ₯Ό μ΄ˆκΈ°ν™”ν•˜κΈ° 전에 지도가 이미 μ‹œμž‘λ˜μ—ˆλŠ”μ§€ μ—¬λΆ€λ₯Ό ν™•μΈν•©λ‹ˆλ‹€.

var μ»¨ν…Œμ΄λ„ˆ = L.DomUtil.get('지도');
if(μ»¨ν…Œμ΄λ„ˆ != null){
container._leaflet_id = null;
}

λͺ¨λ“  20 λŒ“κΈ€

κΈ°μ‘΄ 지도λ₯Ό λ‹€μ‹œ μ΄ˆκΈ°ν™”ν•˜λ €λŠ” 것 κ°™κ΅°μš”... 여기에 μžˆλŠ” 문제 κ²Œμ‹œνŒμ€ 버그λ₯Ό ν•΄κ²°ν•˜κ³  μƒˆλ‘œμš΄ κΈ°λŠ₯을 μ œμ•ˆν•˜κΈ° μœ„ν•œ κ²ƒμž…λ‹ˆλ‹€. StackOverflow(http://stackoverflow.com/questions/tagged/leaflet)λŠ” 라이브러리 μ‚¬μš© 문제λ₯Ό ν•΄κ²°ν•˜κΈ°μ— 더 쒋은 κ³³μž…λ‹ˆλ‹€. 이것이 λ²„κ·Έλ‘œ μΈν•œ 것이라고 μƒκ°λ˜λ©΄ JSFiddle λ˜λŠ” λ‹€λ₯Έ 데λͺ¨ μ‚¬μ΄νŠΈμ— 예제 사둀λ₯Ό κ²Œμ‹œν•˜μ‹­μ‹œμ˜€.

λ¬Έμ œλŠ” 버그가 μ•„λ‹ˆλΌ MVVM의 κ΅¬ν˜„κ³Ό κ΄€λ ¨λœ 것 κ°™μŠ΅λ‹ˆλ‹€. 전단지λ₯Ό μ‚¬μš©ν•˜μ—¬ 일뢀 MVVM 예제λ₯Ό κ²€μƒ‰ν•˜λ €κ³  ν•©λ‹ˆλ‹€.

여기에 같은 λ¬Έμ œκ°€ ... 무엇이 될 수 μžˆμŠ΅λ‹ˆκΉŒ?

@ralexrdz μ•„λ§ˆλ„ 두 번 이상 μ΄ˆκΈ°ν™”ν•˜λŠ” μ»¨ν…Œμ΄λ„ˆμž…λ‹ˆκΉŒ?

@mourner html은 기본적으둜 id="map"인 div와 js 및 cssλ₯Ό λ‘œλ“œν•˜λŠ” html ν—€λ“œμž…λ‹ˆλ‹€. 그리고 λ‚΄κ°€ 가진 μœ μΌν•œ jsλŠ”
map.setView([19.34, -99.15], 12);
L.tileLayer('https://api.tiles.mapbox.com/v4/{id}/{z}/{x}/{y}.png?access_token={accessToken}', {
μ €μž‘μž ν‘œμ‹œ: '지도 데이터 Β© OpenStreetMap 기고자, CC-BY-SA , Imagery Β© Mapbox ',
μ΅œλŒ€ 쀌: 18,
아이디: 'mapboxMapId,
accessToken: 'mapboxAccessToken'
}).addTo(지도);
μ»¨ν…Œμ΄λ„ˆκ°€ 이전에 μ΄ˆκΈ°ν™”λ˜λŠ” 방법은 λ¬΄μ—‡μž…λ‹ˆκΉŒ?

λ™μΌν•œ λ¬Έμ œκ°€ μžˆμŠ΅λ‹ˆλ‹€. Reactμ—μ„œ 전단지λ₯Ό μ‚¬μš©ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

그것은 λ°˜μ‘ 전단지 버그가 될 κ²ƒμž…λ‹ˆλ‹€. μ•„λ§ˆλ„ @epicallan

@danzel μ €λŠ” react-leaflet 버그인 reactλ₯Ό μ‚¬μš©ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. 방금 λͺ‡ 가지 ν•΄ν‚Ή 문제λ₯Ό ν•΄κ²°ν–ˆμŠ΅λ‹ˆλ‹€.

@epicallan 당신이 ν•œ 일을 μ„€λͺ…ν•΄ μ£Όμ‹œκ² μŠ΅λ‹ˆκΉŒ? React 및 Leafletκ³Ό λ™μΌν•œ λ¬Έμ œκ°€ μžˆμŠ΅λ‹ˆλ‹€.

지도λ₯Ό μ΄ˆκΈ°ν™”ν•˜κΈ° 전에 지도가 이미 μ‹œμž‘λ˜μ—ˆλŠ”μ§€ μ—¬λΆ€λ₯Ό ν™•μΈν•©λ‹ˆλ‹€.

var μ»¨ν…Œμ΄λ„ˆ = L.DomUtil.get('지도');
if(μ»¨ν…Œμ΄λ„ˆ != null){
container._leaflet_id = null;
}

@Dipinrajc 이 방법을 μ‚¬μš©ν•˜λ©΄ μ§€λ„μ—μ„œ 마우슀둜 λ“œλž˜κ·Έν•  수 μ—†μŠ΅λ‹ˆλ‹€.

@adrielstar 마우슀둜 지도λ₯Ό λ‹€μ‹œ λ“œλž˜κ·Έν•˜λŠ” 방법에 λŒ€ν•œ 아이디어가 μžˆμŠ΅λ‹ˆκΉŒ?

λ‚˜λŠ” 이것을 @fillipefeitosa λ₯Ό μ‚¬μš©ν•œλ‹€.

HTML:
< div 아이디="지도" >< /div>

λ Œλ” 맡:
document.getElementById('map').innerHTML = "< div id='map' μŠ€νƒ€μΌ='λ„ˆλΉ„: 100%; 높이: 100%;'>";

지도λ₯Ό λ Œλ”λ§ν•˜λŠ” div의 λ‚΄μš©μ„ λ‹€μ‹œ λ‘œλ“œν•©λ‹ˆλ‹€.
ν›„ν”„ 이것도 도움이 될 κ²ƒμž…λ‹ˆλ‹€

μΉœκ΅¬μ—κ²Œ κ°μ‚¬ν•˜μ§€λ§Œ μž‘λ™ν•˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€. λ‚΄ var map λ₯Ό div둜 λŒ€μ²΄ν•˜κ³  지도가 λ‘œλ“œλ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

지도λ₯Ό μ΄ˆκΈ°ν™”ν•˜κΈ° 전에 지도가 이미 μ‹œμž‘λ˜μ—ˆλŠ”μ§€ μ—¬λΆ€λ₯Ό ν™•μΈν•©λ‹ˆλ‹€.

var μ»¨ν…Œμ΄λ„ˆ = L.DomUtil.get('지도');
if(μ»¨ν…Œμ΄λ„ˆ != null){
container._leaflet_id = null;
}

이에 λŒ€ν•œ κΈ°μ‘΄ 전단지 방법이 μžˆμŠ΅λ‹ˆκΉŒ?

λ‚˜μ™€ 같은 문제 :(

지도λ₯Ό μ΄ˆκΈ°ν™”ν•˜κΈ° 전에 지도가 이미 μ‹œμž‘λ˜μ—ˆλŠ”μ§€ μ—¬λΆ€λ₯Ό ν™•μΈν•©λ‹ˆλ‹€.
var μ»¨ν…Œμ΄λ„ˆ = L.DomUtil.get('지도');
if(μ»¨ν…Œμ΄λ„ˆ != null){
container._leaflet_id = null;
}

이에 λŒ€ν•œ κΈ°μ‘΄ 전단지 방법이 μžˆμŠ΅λ‹ˆκΉŒ?

@enzojimenez , μ•„λž˜μ—μ„œ λ§Œλ“  κ²ƒμ²˜λŸΌ ν•˜λ‚˜μ˜ 방법을 λ§Œλ“€ 수 μžˆμŠ΅λ‹ˆλ‹€.

function initializingMap() // 지도λ₯Ό μ΄ˆκΈ°ν™”ν•˜κΈ° 전에 이 λ©”μ„œλ“œλ₯Ό ν˜ΈμΆœν•©λ‹ˆλ‹€.
{
var μ»¨ν…Œμ΄λ„ˆ = L.DomUtil.get('지도');
if(μ»¨ν…Œμ΄λ„ˆ != null){
container._leaflet_id = null;
}
}

문제λ₯Ό ν•΄κ²°ν•˜λ €λ©΄ λ‹€μŒμ„ μ •μ˜ν•˜μ‹­μ‹œμ˜€.
* 'λ¦¬ν”Œλ¦Ώ'μ—μ„œ μ§€λ„λ‘œ κ°€μ Έμ˜€κΈ°;

@ViewChild('지도') mapElement: ElementRef;
지도: Map.Map;

this.map = Map.map(this.mapElement.nativeElement, {
μ΅œλŒ€ 쀌: 18
});

μ†”λ£¨μ…˜: https://www.designlimbo.com/leaflet-ionic-3-and-map-container-is-already-initialized/

μ—¬κΈ° μ—μ„œ λ§ν–ˆλ“―μ΄ 이것이 κ°€μž₯ 쒋은 λ°©λ²•μž…λ‹ˆλ‹€.
if (map != undefined) { map.remove(); }

지도λ₯Ό μ΄ˆκΈ°ν™”ν•˜κΈ° 전에 지도가 이미 μ‹œμž‘λ˜μ—ˆλŠ”μ§€ μ—¬λΆ€λ₯Ό ν™•μΈν•©λ‹ˆλ‹€.

var μ»¨ν…Œμ΄λ„ˆ = L.DomUtil.get('지도');
if(μ»¨ν…Œμ΄λ„ˆ != null){
container._leaflet_id = null;
}

당신은 μ²œμ‚¬μž…λ‹ˆλ‹€

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰