Как получить полное имя ключевого поля (название страны) в HTML Angular JS? - PullRequest
0 голосов
/ 29 ноября 2018

Я использую Angular JS, Lodash.Поэтому я вызываю один API, API имеет данные json, как показано ниже.

[{ "_id":"zw",
   "name":"Zimbabwe"   
},
{ "_id":"au",
   "name":"Australia"   
},
{ "_id":"in",
   "name":"India"   
}]

Я написал одну функцию для отображения кода страны в соответствии с полной формой стран.

$scope.CountryHashmap  =  _.reduce(res,  function (hash,  value)  {
          var  key  =  value['_id'];
          hash[key]  =  value['name'];
          return  hash;
        },  {});

После вводаФункция _.reduce ниже отображает данные:

{
"zw":"Zimbabwe",
"au":"Australia",
"in":"india"

}

На html-странице у меня уже есть код страны, поэтому я хочу указать полное название страны и место кодов.

HTML :

{{countryCode}}

CountryCode, такой как au, in и zw.

Ответы [ 2 ]

0 голосов
/ 29 ноября 2018

Как я понимаю, просто передайте коды стран key в массив сопоставленных данных, например mappedDataArr[key]

var app = angular.module("myApp", []);

app.controller("MyCtrl", function($scope) {	
    $scope.mappedDataArr = {
      "zw":"Zimbabwe",
      "au":"Australia",
      "in":"india"
    };
});
<html>
<head>
   <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>

</head>
<body>
<div ng-app="myApp" ng-controller="MyCtrl">
    <span>{{ mappedDataArr['in'] }}</span>
</div>
</body>
</html>
0 голосов
/ 29 ноября 2018

если вы хотите получить имя из $ scope.CountryHashmap, то $ scope.CountryHashmap возвращает имя страны из объекта.

 {{CountryHashmap[countryCode]}} 

вы также можете создать функцию.

$scope.getName(code){
    if(code)
        return $scope.CountryHashmap[code];
}

Нетясно, что вы хотите.: P

...