Openlayers: добавить список точек на слой - PullRequest
0 голосов
/ 08 марта 2019

У меня проблема с добавлением списка точек к векторному источнику, слою и, наконец, к карте в Openlayers. Сначала я создаю пустой массив, затем перебираю заданный набор данных и создаю новую точку с иконкой и текстовым полем для каждого объекта и сохраняю маркер в списке. В конце я хочу создать новый ol.source.Vector () с массивом, который приводит к ошибке «c.Xa не является функцией». Если я просто вычеркну один маркер из списка и добавлю его в исходный вектор, и на карте все будет отлично работать с правильной позицией на карте, правой иконкой и правым текстом.

var markers=[];

for(var i=1; i<ResearchStations.length; i++){
  var mark=new ol.Feature({
  				geometry: new ol.geom.Point(
				    ol.proj.fromLonLat([lon, lat], proj3031)
  				),
	});
  var icon = new ol.style.Style({
      				image: new ol.style.Icon({
              ...
     		 		  }),
			        text: new ol.style.Text({
              ...
        			})
   })
  mark.setStyle(icon);
  markers[i]=mark;
}

console.log(1) 
var vectorSource = new ol.source.Vector({
  		features: [markers],
});
console.log(2)
var StationLayer = new ol.layer.Vector({
  		source: vectorSource,
	});
console.log(3)
map.addLayer(StationLayer);

Ошибка возникает после console.log (1)

...