2013-07-17 4 views
0

Angularjs를 학습하고 처음 C# Web MVC 응용 프로그램에서이를 구현하려고합니다. 내가 JSON 형식의 데이터를 얻을 수 없습니다입니다각도를 사용하여보기에서 json 데이터를 표시하는 방법

내가 내 커피의 전대/JS

에 JSON 데이터를 반환 데이터를 목적으로 내 C# 컨트롤러에서

에 대한 각도/면도기를 사용하여 내보기에 표시 할 내 컨트롤러에서 반환 내 커피 스크립트에서
public ActionResult Load (string id){ 
//data retrieved from model and formatted in json here 
return Json(jsonData ,JsonRequestBehavior.AllowGet); 

내가 가진 :

define ['test'], (app) -> 
    ($scope, $http, $location) -> 
     $scope.vData = (id) -> 
      $.ajax 
       url: 'Mobile/Load?id=1237' 
      .done (response) -> 
       alert response 
       $scope.vdata = [response] 
       $scope.$apply() unless $scope.$$phase 

나는보기가 나는 일에서 데이터를 볼 수 있다면 테스트하는 데 사용 알림 버튼이 응용 프로그램을 실행하면 전자 JSON 응답 :

다음과 같은 형식의

경고 쇼 데이터 : 내보기에서

{ 
    "versions":{ 
     "is_live":"true", 
     "type":"multiple", 
     "rendition":{ 
     "@name":"My Test", 
     "@url":"http://test.net/location/test.m3u8", 
     "@thumbnail":"http:// test.net/location/testimg/cam.png", 
     "@thumbnail_update_interval":"10" 
     } 
    } 
} 

나는 레이블 여러 가지 방법으로 데이터를 가져 오기 위해 시도했지만 실패했다 :

<label>{{vdata.is_live}}</label> 
<label>{{vdata.versions.is_live}}</label> 
<label>{{is_live}}</label> 

디버깅하는 동안 브라우저에서 json 데이터가 객체가 아닌 문자열 형식임을 알게되었습니다.

이것이 문제가 될 수 있습니까?

각도를 사용하여 json 데이터에서 내보기의 데이터를 표시 할 수 있습니까?

답변

2

두 가지가 변경됩니다. json 데이터가 문자열 형식 인 경우 첫 번째 것은 JSON.parse (jsondata)를 사용하여 클라이언트에서 데이터를받을 때 파싱해야합니다.

나는 커피 스크립트를 모르지만 난 그냥 변경할 수 있습니다 무엇을 보여주기 위해 자바 스크립트를 사용하여 누락 된 것을 추가 할 것입니다 : 다음 시도

define ['test'], (app) -> 
    ($scope, $http, $location) -> 
     $scope.vData = (id) -> 
      $.ajax 
       url: 'Mobile/Load?id=1237' 
      .done (response) -> 
       alert response 
       $scope.vdata = JSON.parse([response]) 
       $scope.$apply() unless $scope.$$phase 

과 :

<label>{{vdata.versions.is_live}}</label> 

하자를 그것이 작동하는지 나에게 안다!

+0

나는 그것을 전에 시도했다. 내가 시도한 것을 보여주기 위해 질문을 변경했다. – Milligran

+0

json.parse가 작동했다. – Milligran

관련 문제