Я новичок в веб-разработке, и у меня проблема с моим кодом. Я использую Leaflet API для добавления карты в свой проект и пытаюсь сделать это с помощью ООП.
У меня есть один файл с именем Map.js
и другой с именем Marker.js
:
Map.js:
var Map = {
lat: [47.218372, -1.553621],
init(){
var map = L.map('map').setView(this.lat, 14);
L.tileLayer('https://{s}.tile.openstreetmap.fr/osmfr/{z}/{x}/{y}.png', { maxZoom: 20 }).addTo(map);
}
}
. Marker.js:
class Marker {
constructor(address, emplacement, name, bikeStands, avBikeStands, avBikes){
this.address = address;
this.emplacement = emplacement;
this.name = name;
this.bikeStands = bikeStands;
this.avBikeStands = avBikeStands;
this.avBikes = avBikes;
// ICONS MAP ->
var iconGood = L.icon({
iconUrl : 'img/markGood.png',
iconSize: [25, 41],
iconAnchor: [12.5, 41],
popupAnchor: [0, -41],
shadowUrl: 'https://unpkg.com/leaflet@1.4.0/dist/images/marker-shadow.png',
});
var iconMed = L.icon({
iconUrl : 'img/markMedium.png',
iconSize: [25, 41],
iconAnchor: [12.5, 41],
popupAnchor: [0, -41],
shadowUrl: 'https://unpkg.com/leaflet@1.4.0/dist/images/marker-shadow.png',
});
var iconLow = L.icon({
iconUrl : 'img/markLow.png',
iconSize: [25, 41],
iconAnchor: [12.5, 41],
popupAnchor: [0, -41],
shadowUrl: 'https://unpkg.com/leaflet@1.4.0/dist/images/marker-shadow.png',
});
// <- ICONS MAP
console.log("test +" + addMap)
if(this.avBikes <= 0){
this.marker = L.marker(this.emplacement, {icon: iconLow}).addTo(map);
}
else if(this.avBikes < 5){
this.marker = L.marker(this.emplacement, {icon: iconMed}).addTo(map);
}
else{
this.marker = L.marker(this.emplacement, {icon: iconGood}).addTo(map);
}
}
Моя проблема в моей функции L.Marker
, переменная "map" не работает, я не знаю, как это сделать.