Я все еще не понимаю «это». В следующем контексте я продолжаю получать сообщение об ошибке «this.markerArray is undefined». Но я объявил markerArray как глобальную переменную, поэтому я немного запутался.
@Component({
selector: 'app-open-street-map',
templateUrl: './open-street-map.component.html',
styleUrls: ['./open-street-map.component.css']
})
export class OpenStreetMapComponent implements OnInit {
@Output() private add = new EventEmitter();
@Output() private edit = new EventEmitter<number>();
artworkList: Artwork[];
map;
//declared it here
markerArray = [];
constructor() { }
ngOnInit() {
});
buildMarkers(artworkList) {
for (let artwork of artworkList) {
const marker = this.buildPopup(artwork);
this.markers.push(marker);
}
console.info("marker", marker);
console.info("markerArray", this.markerArray);
}
}
Я, очевидно, удалил много кода с этой страницы ts! дело в том, чтобы заполнить markerArray, я понял вашу предыдущую точку инициализации, что я и сделал, но по какой-то причине все входы массива все еще «неопределены»?





Вам нужно инициализировать его пустым массивом
markerArray = [];
Спасибо! Но я подумал, что если я просто оставлю это так, это будет означать «любой»! Я тоже не инициализировал карту, почему это работает?