Appendix of the coordinates of the card index to the mass



  • I'm trying to get the species coordinates.

    [
        [55.75, 37.50], [55.75, 37.71], [55.70, 37.70]
    ]
    

    Code

    var coords = [];
    

    for ( var i = 0; i < addresses.length; i++ )
    {
    ymaps.geocode(addresses[i], {results: 1 }).then(function (res) {
    console.log(res.geoObjects.get(0).geometry.getCoordinates()); // ok
    coords.push(res.geoObjects.get(0).geometry.getCoordinates());
    });
    }

    console.log(coords); // empty

    On the way out, I get an empty mass:



  • implementation of the multi-geocodier:

    https://github.com/deflexor/ymaps/blob/patch-1/multi-geocoder.js

    * Класс для геокодирования списка адресов или координат.
     * @class
     * @name MultiGeocoder
     * @param {Object} [options={}] Дефолтные опции мультигеокодера.
     */
    function MultiGeocoder(options) {
        this._options = options || {};
    }
    

    /**

    • Функция множественнеого геокодирования.

    • @function

    • @requires ymaps.util.extend

    • @see http://api.yandex.ru/maps/doc/jsapi/2.x/ref/reference/util.extend.xml

    • @requires ymaps.util.Promise

    • @see http://api.yandex.ru/maps/doc/jsapi/2.x/ref/reference/util.Promise.xml

    • @name MultiGeocoder.geocode

    • @param {Array} requests Массив строк-имен топонимов и/или геометрий точек (обратное геокодирование)

    • @returns {Object} Как и в обычном геокодере, вернем объект-обещание.
      */
      MultiGeocoder.prototype.geocode = function (requests, options) {
      var self = this,
      size = requests.length,
      defer = new ymaps.vow.defer(),
      geoObjects = new ymaps.Collection();

      requests.forEach(function (request, index) {
      ymaps.geocode(request, ymaps.util.extend({}, self._options, options))
      .then(
      function (response) {
      var geoObject = response.geoObjects.get(0);

                   geoObject &amp;&amp; geoObjects.add(geoObject, index);
                   --size || defer.resolve({ geoObjects : geoObjects });
               },
               function (err) {
                   defer.reject(err);
               }
           );
      

      });

      return defer.promise();
      };




Suggested Topics

  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2