Задать вопрос

Yandex maps Uncaught TypeError: Cannot read property '1' of null — как исправить?

На карте используется кластеризатор. При увеличении возникает эта ошибка "Uncaught TypeError: Cannot read property '1' of null". Дело в том что все работало, и никаких изменений в код не вносилось, а с недавнего времени начало возникать это.

вот код который за это отвечает.
ymaps.ready(function () {
			var objects = {$arr|json_encode:true};
			var coords = [], icons = [], img = [], name = [], address = [], url = [];

			for (var x = 0; x < objects.length; x++) {
				coords[x] = objects[x]['point'];
				icons[x] = objects[x]['placemark'];
				img[x] = objects[x]['img'];
				name[x] = objects[x]['name'];
				address[x] = objects[x]['address'];
				url[x] = objects[x]['url'];
			}

			var myMap = new ymaps.Map('map', {
						center: [55.751574, 37.573856],
						zoom: 9,
						controls: ['fullscreenControl', 'zoomControl']
					}),
					MyIconContentLayout = ymaps.templateLayoutFactory.createClass('<span style="color: #ffffff; font-weight: bold; font-size: 38px;">$[properties.geoObjects.length]</span>'),
					clusterer = new ymaps.Clusterer({
						gridSize: 80,
						clusterDisableClickZoom: false,
						clusterIcons: [{
							href: '/media/files/cluster.png',
							size: [69, 75],
							offset: [-34, -37]
						}],
						clusterNumbers: [100],
						clusterIconContentLayout: MyIconContentLayout
					}),
					points = coords,
					geoObjects = [];

			function getPointData(index) {
				return {
					balloonContentBody: '<img class="dealer-map-img" src="'+img[index]+'" />' +
					'<div class="dealer-map-content"><h6 class="dealer-map-name">' + name[index] + '</h6>' +
					'<address class="dealer-map-address">' + address[index] + '</address>' +
					'<a class="dealer-map-site" href="' + url[index] + '" target="_blank">Перейти на сайт</a></div>'
				};
			}

			function getPointOptions(index) {
				return {
					iconLayout: 'default#image',
					iconImageHref: icons[index],
					iconImageSize: [69, 75],
					offset: [-34, -37]
				};
			}

			for(var i = 0, len = points.length; i < len; i++) {
				geoObjects[i] = new ymaps.Placemark(points[i], getPointData(i), getPointOptions(i));
			}

			clusterer.add(geoObjects);
			myMap.geoObjects.add(clusterer);
			myMap.behaviors.disable('scrollZoom');

			myMap.setBounds(clusterer.getBounds(), {
				checkZoomRange: true
			});
		});

В чем может быть проблема?
  • Вопрос задан
  • 6566 просмотров
Подписаться 3 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 1
forgotten
@forgotten
Руководитель разработки API Яндекс.Карт
Обычно такая проблема возникает, если у вас некорректно заданы координаты меток в кластере — строки вместо чисел, широты больше 90 градусов и т.п.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы