Клуб API Карт

Руководство по переходу на JavaScript API 2.х (дополнительно)

Пост в архиве.

Потребовалось перейти с 1.х версии на 2.х.

 

Восспользовался данным руководством: http://api.yandex.ru/maps/doc/jsapi/2.x/update/concepts/update.xml

Но как оказалось в данном руководстве есть не все соответствия между 1.х версией и 2.х.

 

Подскажите пожалуйста варианты замены.

 

На что данный код заменить?


Есть код:

 

1.

_this.placemark[i].setOptions({zIndex: 120});

 решение:

_this.placemark[i].options.set({zIndex: 120});
2.
_this.map.panTo(_this.placemark[i].getGeoPoint(), {flying: 1});

 решение:

_this.map.panTo(_this.placemark[i].geometry.getCoordinates(), {flying: true});

3.

 

_this.mapl.removeAllOverlays();

 

P.S.

Буду по мере проблемм, дополнять.

9 комментариев
_this.placemark[i].options.set('zIndex', 120);
можно ещё и так
_this.placemark[i].options.set({zIndex: 120});
Виталий С.
28 января 2016, 01:04

Спасибо.

2) _this.map.panTo(_this.placemark[i].getGeoPoint(), {flying: 1});

_this.map.panTo(_this.placemark[i].geometry.getCoordinates(), {flying: true});
Виталий С.
28 января 2016, 01:04

Спасибо.

Но выглядит странным образом.

Похоже getCoordinates возвращает порядок координат наоборот. 

panTo ждет lat, long (широта, долгота)

Такое может быть?

getCoordinates возвращает в том виде, в котором были заданы метке.

В API 2.0 по умолчанию используется порядок latlong. 
Поменять порядок можно опцией при подключении.  

Виталий С.
28 января 2016, 01:04

Спасибо. Долго искал ошибку. К сожалению не в этом проблемма.

Еще разбираюсь. Эксперементальным путем заметил. 

Что _this.placemark[i].geometry.getCoordinates() возвращает массив вида ["49.9887", "36.2245"]

а работает пример только если это будет число, а не строка, вы с таким сталкивались? можно ли попросить getCoordinates() возвращать числа а не строки? или panTo понимать строка на ровне с числами?

Возможно, проблема в том, что Вы изначально передаете в конструктор метки строки

Виталий С.
28 января 2016, 01:04

Вопрос отменяется. Как вы и писали выше getCoordinates возвращает ровным счетом то что было задано при установки метки. Так что просто переписал инициализацию меток, что бы не строка была, а число.


Спасибо. 


P.S.

Странно, что для задания метки, подошли строки, а вот для метода panTo - нет.

 

P.S.

Странно, что для задания метки, подошли строки, а вот для метода panTo - нет.

 

Мы знаем об этой проблеме, когда-нибудь будет приведение типов, но когда точно не могу сказать