Как изменить значения, полученные из json url в Angular

0

У меня есть служба, которая извлекает JSON из URL-адреса, я использую ng-repeat для отображения значений в списке.

Мой JSON выглядит так:

[
  {"iconuser":"livingroom1","class":"w5","status":"0"},     
  {"iconuser":"meetingroom1","class":"w4","status":"1"}
]

Как заменить некоторые значения этого объекта.

пример:

status = 0 должен быть status = OFF
status = 1 должен быть status = ON

Теги:
parsing

2 ответа

1
Лучший ответ

В родном угловом:

$scope.item = [{"iconuser":"livingroom1","class":"w5","status":"0"}, 
{"iconuser":"meetingroom1","class":"w4","status":"1"}];

angular.forEach($scope.item,, function(obj) {
    if(obj.status === 0)
      obj.status = "OFF";
    else
      obj.status = "ON";

    return obj;   
});
  • 0
    спасибо за ваш ответ, что я должен использовать, чтобы показать новое значение в моем списке? я использую {{device.status}} (с устройства на устройствах)
  • 0
    Этот ответ переопределит status в json на строку ( On/Off ), вы все равно можете использовать его как device.status . Вы хотите создать новое свойство, сохраняя исходный status как ( 1/0 )?
1

Вы можете использовать Array.map для форматирования ответа:

var formattedData = responseData.map(function(obj) {
    if (obj.status === 0) {
        obj.status = "OFF";
    } //etc

    return obj;
});

Ещё вопросы

Сообщество Overcoder
Наверх
Меню