forked from cemaden-educacao/WPD-MobileApp
analuizaff
4 years ago
5 changed files with 158 additions and 93 deletions
-
7src/app/components/map/LeafLetMap.js
-
171src/app/components/map/Map.html
-
9src/app/components/map/OpenStreetMap.js
-
48src/app/screens/MapFormScreen.js
-
16src/package-lock.json
@ -1,87 +1,102 @@ |
|||
<!DOCTYPE html> |
|||
<html> |
|||
<head> |
|||
<title>Mobile tutorial - Leaflet</title> |
|||
<meta charset="utf-8" /> |
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> |
|||
|
|||
<!-- <link --> |
|||
<!-- rel="shortcut icon" --> |
|||
<!-- type="image/x-icon" --> |
|||
<!-- href="docs/images/favicon.ico" --> |
|||
<!-- /> --> |
|||
<link |
|||
rel="stylesheet" |
|||
href="https://unpkg.com/leaflet@1.7.1/dist/leaflet.css" |
|||
integrity="sha512-xodZBNTC5n17Xt2atTPuE1HxjVMSvLVW9ocqUKLsCC5CXdbqCmblAshOMAS6/keqq/sMZMZ19scR4PsZChSR7A==" |
|||
crossorigin="" |
|||
/> |
|||
<script |
|||
src="https://unpkg.com/leaflet@1.7.1/dist/leaflet.js" |
|||
integrity="sha512-XQoYMqMTK8LvdxXYG3nZ448hOEQiglfqkJs1NOQV44cWnUrBc8PkAOcXy20w0vlaXaVUearIOBhiXZ5V3ynxwA==" |
|||
crossorigin="" |
|||
></script> |
|||
<style> |
|||
html, |
|||
body { |
|||
height: 100%; |
|||
margin: 0; |
|||
} |
|||
#map { |
|||
width: 600px; |
|||
height: 400px; |
|||
} |
|||
</style> |
|||
<style> |
|||
body { |
|||
padding: 0; |
|||
margin: 0; |
|||
} |
|||
#map { |
|||
height: 100%; |
|||
width: 100vw; |
|||
} |
|||
</style> |
|||
</head> |
|||
<body> |
|||
<div id="map"></div> |
|||
<script> |
|||
var map = L.map("map").setView([51.505, -0.09], 13); |
|||
var markers = {}; |
|||
<head> |
|||
<title>Mobile tutorial - Leaflet</title> |
|||
<meta charset="utf-8" /> |
|||
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> |
|||
|
|||
L.tileLayer( |
|||
"https://api.mapbox.com/styles/v1/{id}/tiles/{z}/{x}/{y}?access_token=pk.eyJ1IjoiZ2FicmllbC10cmV0dGVsIiwiYSI6ImNrb2RjNWIzYjAwczIyd25yNnUweDNveTkifQ.xRASmGTYm0ieS-FjVrXSjA", |
|||
{ |
|||
maxZoom: 18, |
|||
attribution: |
|||
'Map data © <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors, ' + |
|||
'Imagery © <a href="https://www.mapbox.com/">Mapbox</a>', |
|||
id: "mapbox/streets-v11", |
|||
tileSize: 512, |
|||
zoomOffset: -1, |
|||
} |
|||
).addTo(map); |
|||
<!-- <link --> |
|||
<!-- rel="shortcut icon" --> |
|||
<!-- type="image/x-icon" --> |
|||
<!-- href="docs/images/favicon.ico" --> |
|||
<!-- /> --> |
|||
<link rel="stylesheet" href="https://unpkg.com/leaflet@1.7.1/dist/leaflet.css" |
|||
integrity="sha512-xodZBNTC5n17Xt2atTPuE1HxjVMSvLVW9ocqUKLsCC5CXdbqCmblAshOMAS6/keqq/sMZMZ19scR4PsZChSR7A==" |
|||
crossorigin="" /> |
|||
<script src="https://unpkg.com/leaflet@1.7.1/dist/leaflet.js" |
|||
integrity="sha512-XQoYMqMTK8LvdxXYG3nZ448hOEQiglfqkJs1NOQV44cWnUrBc8PkAOcXy20w0vlaXaVUearIOBhiXZ5V3ynxwA==" |
|||
crossorigin=""></script> |
|||
<style> |
|||
html, |
|||
body { |
|||
height: 100%; |
|||
margin: 0; |
|||
} |
|||
|
|||
function onMapClick(e) { |
|||
var payload = { |
|||
code: 1, |
|||
content: { |
|||
latitude: e.latlng.lat.toString().slice(0, 8), |
|||
longitude: e.latlng.lng.toString().slice(0, 8), |
|||
}, |
|||
}; |
|||
window.ReactNativeWebView.postMessage(JSON.stringify(payload)); |
|||
} |
|||
#map { |
|||
width: 600px; |
|||
height: 400px; |
|||
} |
|||
</style> |
|||
<style> |
|||
body { |
|||
padding: 0; |
|||
margin: 0; |
|||
} |
|||
|
|||
#map { |
|||
height: 100%; |
|||
width: 100vw; |
|||
} |
|||
</style> |
|||
</head> |
|||
|
|||
function onPopupClick(e) { |
|||
var payload = { |
|||
code: 2, |
|||
content: this.options.ID, |
|||
}; |
|||
window.ReactNativeWebView.postMessage(JSON.stringify(payload)); |
|||
<body> |
|||
<div id="map"></div> |
|||
<script> |
|||
var map = L.map("map").setView([51.505, -0.09], 13); |
|||
var markers = {}; |
|||
|
|||
L.tileLayer( |
|||
"https://api.mapbox.com/styles/v1/{id}/tiles/{z}/{x}/{y}?access_token=pk.eyJ1IjoiZ2FicmllbC10cmV0dGVsIiwiYSI6ImNrb2RjNWIzYjAwczIyd25yNnUweDNveTkifQ.xRASmGTYm0ieS-FjVrXSjA", |
|||
{ |
|||
maxZoom: 18, |
|||
attribution: |
|||
'Map data © <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors, ' + |
|||
'Imagery © <a href="https://www.mapbox.com/">Mapbox</a>', |
|||
id: "mapbox/streets-v11", |
|||
tileSize: 512, |
|||
zoomOffset: -1, |
|||
} |
|||
).addTo(map); |
|||
|
|||
function onMapClick(e) { |
|||
var payload = { |
|||
code: 1, |
|||
content: { |
|||
latitude: e.latlng.lat.toString().slice(0, 8), |
|||
longitude: e.latlng.lng.toString().slice(0, 8), |
|||
}, |
|||
}; |
|||
window.ReactNativeWebView.postMessage(JSON.stringify(payload)); |
|||
} |
|||
|
|||
function onPopupClick(e) { |
|||
var payload = { |
|||
code: 2, |
|||
content: this.options.ID, |
|||
}; |
|||
window.ReactNativeWebView.postMessage(JSON.stringify(payload)); |
|||
} |
|||
|
|||
var marker = L.marker([0, 0]).bindPopup("Your pickup spot is in this area").addTo(map); |
|||
function onMoveEnd(e) { |
|||
marker.setLatLng(map.getCenter()); |
|||
|
|||
var payload = { |
|||
code: 3, |
|||
content: { |
|||
latitude: map.getCenter().lat, |
|||
longitude: map.getCenter().lng, |
|||
}, |
|||
}; |
|||
window.ReactNativeWebView.postMessage(JSON.stringify(payload)); |
|||
} |
|||
|
|||
map.on("moveend", onMoveEnd); |
|||
map.on("click", onMapClick); |
|||
</script> |
|||
</body> |
|||
</html> |
|||
</script> |
|||
</body> |
|||
|
|||
</html> |
Write
Preview
Loading…
Cancel
Save
Reference in new issue