ArcGIS API для JavaScript и dojo: lang.clone для выбранных объектов из векторного слоя
Я хотел бы клонировать в новый массив (глубокую копию без ссылок) объекты, которые я выбрал в слое объектов с помощью метода getSelectedFeatures().
Я пытаюсь использовать lang.clone из dojo, но он не работает. У меня есть эта ошибка: "TypeError: this._url является нулевым".
Я понимаю, что это происходит из векторного слоя. Но я не знаю, как исправить эту ошибку или даже если можно сделать то, что я хочу сделать таким образом. Я совсем новичок в JSAPI.
Я уже использовал lang.clone с serviceAreaPolygons из serviceAreaSolveResult, и он работал очень хорошо!
Может ли кто-нибудь помочь мне в этой проблеме? Заранее спасибо.
1 ответ
[По комментариям Клемини] Как сказано выше, используя ToJson
метод для преобразования объектов в json и вставки их в новый графический объект
var graphic = centres.getSelectedFeatures()[i].toJson();
var selectionGraphic = new Graphic(graphic);
selection.push(selectionGraphic);
Это разрешит вышеуказанную ошибку.
Надеюсь, что это поможет и другим:)