featuresadded
(обратите внимание на форму множественного числа) передает целый массив добавленных функций (даже если это единственная функция, она все еще обернута d в массиве), в вашем примере вы пытаетесь получить доступ к свойству fid
массива функций, который возвращает undefined
. Вы должны либо:
- Прослушайте
featureadded
событий (форма единственного числа):
Объект события передается слушателям будет иметь свойство функции со ссылкой на дополнительной функции.
- Extract соответствующей функции внутри
featuresadded
обработчика, то есть:
featuresadded: function(features) {
var lastFeature = features[features.length - 1];
var lastFeatureId = lastFeature.id;
}
Как общий совет: я бы рекомендовал использовать console.log
вместо alert
для отладки, он показывает все свойства объекта, позволяющие вам его проверить (в этом случае: см., что свойство ID называется id
, а не fid
). Alert принуждает объект к строке, часто отображая что-то бесполезное, как [object Object]