2016-07-15 2 views
0

내 서비스가 DB에서 데이터를 반환합니다. 이제 AngularJS를 사용하여 해당 데이터의 특정 값을 배열에 푸시하고자합니다.AngularJS를 사용하여 값을 배열에 푸시

var prodData = make a call to the service. 

var versionsArray = []; 

데이터는 서비스에서 반환 유사한 형식을 보이는

{"prodId":"31123","prodName":"IPhone","Versions":[4,5,6]} 

지금은 현장의 "버전"값을 밀어 원하는 : 배열에있는 [4,5,6]을 나중에 versionsArray이라고 불리는이 배열을 사용하면 해당 배열을 드롭 다운에 바인딩하고 드롭 다운에 버전을 표시 할 수 있습니다.

나는

Versions.push({ 
id: prodData.Versions, 
value: prodData.Versions 
}); 

가 어떻게 배열에이 값 푸시를 검색 할 아래의 방법으로 뭔가 싶어?

+0

각도 서비스에서 사용하는 코드를 공유 할 수 있습니까? 피 들러 또는 plunkr이 도움이 될 것입니다. –

+0

https://plnkr.co/edit/MEZbNfBv0iFrehNPbRVe?p=preview – Henriques

답변

0

아니라, 당신이 그것을 할 수있는 방법은 다음과 같습니다, 나는 그것을 희망

angular.forEach(prodData.Versions, function(version) { 
    versionsArray.push(version); 
}); 

당신을 도와줍니다.

건배! 당신이 일반적으로 일반 자바 스크립트 array.push() 방법을 사용하는 것처럼

+0

감사합니다. 그러나 prodData.Versions는 정의되지 않은 것으로 표시됩니다. 브라우저에서 서비스를 호출 할 때 위 게시물에 표시된대로 데이터가 표시됩니다. ? – Henriques

+0

플 런커를 만들 수 있다면 문제를 해결할 것입니다. 감사합니다 – varit05

+0

나는이 plunk를 만들기 위해 최선을 다했지만 https://plnkr.co/edit/MEZbNfBv0iFrehNPbRVe?p=preview 당신이 저를 돕는 데 도움이되기를 바랍니다. – Henriques

0

당신은

보기

<div ng-app> 
    <div ng-controller="sampleCtrl"> 
    <select ng-model="yourModel" ng-options="ver as ver for ver in  
    versionArray"> 
     <option value="">Select a version</option> 
    </select> 
    </div> 
</div> 

컨트롤러

function sampleCtrl($scope) { 
    var data = { 
    "prodId": "31123", 
    "prodName": "IPhone", 
    "Versions": [4, 5, 6] 
    } 

    $scope.versionArray = []; 
    angular.forEach(data.Versions, function(item) { 
    $scope.versionArray.push(item); 
    }); 
} 

참조 배열로 데이터를 밀어 수 fiddle here

관련 문제