2015-08-13 2 views
0

Как можно динамически добавлять свойства к функциям через d3/sheetlet.geoJson properties add/update

У меня есть этот вид GeoJSON файла:

 {"type":"Feature","id":"01","properties": 
{"name":"Alabama","density":94.65, "news":22}, 
"geometry":{"type":"Polygon","coordinates": 
[[[-87.359296,35.00118],[-85.606675,34.984749],[-85.431413,34.124869]... 

И я хотел бы либо обновить свойство новостей, когда, например, пользователь нажимает на эту функцию или если новости отсутствуют в этой функции, добавьте ее. Это возможно?

+0

Привет, Я больше знаком с OpenLayers чем листовка, но я Гесс ваш GeoJSON интерпретируется как особенности объекты с атрибутами. Эти атрибуты объекта можно редактировать, но вы не будете редактировать сам файл geojsonfile. – jcs

ответ

3

Это, безусловно, возможно: GeoJSON - это надмножество JSON, которое представлено в JavaScript как обычный объект. Чтобы обновить свойство этого GeoJSON функции, если она хранилась в качестве переменной feature, можно было бы написать

feature.properties.news = 23; 
+0

все в порядке, и возможно ли создать это новое свойство, если оно еще не существует, например. feature.properties.add ("news") или так? – Eych

+0

Код тот же для обновления свойства по сравнению с добавлением нового. 'feature.properties.foobar = 10' создаст новое свойство под названием foobar со значением 10 или обновит существующее. – tmcw

+0

Отлично, спасибо большое! Я попробую это позже! – Eych

Смежные вопросы