2015-09-17 5 views
3

мерно Я использую угловые мерно создавать экраны ввода, и все отлично работает до тех пор, как у меня есть KEY для каждого VALUE. Но у меня есть ситуация, когда значение представляет собой объект с массивом в нем. Это промышленный стандарт, поэтому я не могу изменить структуру поля . Родитель Ключ Геокодировать его значение КООРДИНАТЫ (который представляет собой массив с 2 элементов) Я хочу, чтобы изменить эти 2 элемента (долгота и широта). Является ли это выполнимым или действительно нуждается в KEY: VALUE для создания и ввода, который позволит редактировать эти значения.Редактирование элементов массива с угловым

/* - JSON DATA - */
[ "FullName": "Глен Benson",

/* это objext Я пытаюсь изменить координаты элементов */**

"geolocation": { 
    "coordinates": [ 
     -94.467136, 
     39.090707 
    ], 
    "type": "Point" 
    } 

** ]

/* - CONTROLLER SNIPPET мерно - */ { "ключ" : "FullName", "типа": "вход", "templateOptions": { "типа": "Текст", "заполнитель": "FullName" } },

**{ 
    "key": "geocode.coordinates[0]", 
    "type": "input", 
    "templateOptions": { 
     "type": "text", 
     "placeholder": "geocode" 
    } 
}**  
+0

Я имею в виду, что вы всегда можете разобрать структуру и преобразовать ее в свою структуру, которая является плоскими парами ключ/значение для форматирования, а затем преобразовать ее обратно перед отправкой обратно на сервер. –

+0

Не знаете, в чем проблема с вашим «ключом»: «geocode.coordinates [0]» «Это не работает? Пожалуйста, создайте пример, используя: http://help.angular-formly.com – kentcdodds

+0

любые обновления к проблеме yout? – atx

ответ

0

Вы можете получить значение без назвав его сумасшедшей. Он должен работать, как у вас есть, но я имею в виду, мой Бог, это уродливо.

просто установить DefaultValue к значению геолокации ....

key: 'CoordinateX', 
defaultValue: 'model.geocode.geolocation.coordinates[0]' 

ИЛИ добавить контроллер на него, чтобы получить его

key: 'CoordinateX', 
controller: function($scope) { 
$scope.model.CoordinateX = $scope.model.geocode.geolocation.coordinates[0]; 
} 

, то вы можете просто использовать CoordinateX или что-то еще вы хочу назвать это.

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