Как перебрать объект состояния $$ с помощью angular, чтобы заполнить выпадающий список - PullRequest
0 голосов
/ 29 мая 2019

я пытаюсь заполнить раскрывающийся список списком данных, полученных через API http.get в угловом формате, следующее возвращает объект состояния $$.У меня возникли проблемы с циклическим просмотром объекта состояния $$ и созданием нового объекта, который я буду использовать в своем представлении, чтобы перечислить варианты раскрывающегося списка. Любая помощь в основном ценится благодаря вам

$scope.getdataList= function () {
   return $http.get("/api/v1/colorList/getcolor")
       .then(function (response) {
           return JSON.stringify(response.data);
       });
};

$scope.dataList = $scope.getdataList();


/ api/ v1 / colorList / getcolor создает xml

<ColorsResponse>
  <Colors>
    <color>
      <AllowCaseUnderCase>false</AllowCaseUnderCase>
      <ColorId>1</ColorId>
      <ColorSettingId>5</ColorSettingId>
      <ColorName>Red</ColorName>
      <Name>Redco</Name>
      <RolesEnabled>false</RolesEnabled>
      <ShortName>RC</ShortName>
    </color>
  </Colors>
</ColorsResponse>
 $scope.myData = [];
 $scope.colorObj = {};
 angular.forEach($scope.dataList , function (key,value) {
      angular.forEach(value, function (k, v) {
           colorObj.Id=  $scope.dataList['ColorId'];
           colorObj.settingId = $scope.dataList['colorSettingId'];
           colorObj.Name = $scope.dataList['name'];             
      });
      myData.push(colorObj);
});

Если я создаю console.log ($ scope.dataList), создается следующий объект

$$state:
  status: 1
  value: "{
    "Colors":[{
        "ColorId":1,
        "name":"Redco",
        "shortName":"Rc",
        "allowCaseUnderCase":false,
        "rolesEnabled":false,
        "colorName":"Red",
        "colorSettingId":5
    }],
    "ErrorMessages":[],
    "InformationMessages":[],
    "Success":true
}"

В моемпросмотр

 <select  >
        <option  ng-repeat="colorItem in myData" value="{{colorItem.Id}}"
                 ng-change="fetchUser( colorItem.Id , colorItem.settingId )"> 
            {{colorItem.Name}}
        </option>
 </select>
...