2014-10-20 3 views
0

비디오 URL을 파싱하고 썸네일을 렌더링하려고합니다. YouTube (API doc을 구현하지 않았지만)에서 작동합니다. 동영상이 Vimeo에서 온 경우 브라우저가 멈추거나 미리보기 이미지가 비어있는 경우가 있습니다. ngRepeat에서 Vimeo 비디오 미리보기 이미지를 어떻게 얻을 수 있습니까? 내가 동결을 방지하기 위해 비 메오 부분에서 주석

http://plnkr.co/edit/R2yDwc4fjz1xBPiVCv60?p=preview

: 여기

는 plunker 링크입니다.

$http.jsonp(("http://vimeo.com/api/v2/video/" + parsed.id + ".json?callback=JSON_CALLBACK&_=") + (new Date().getTime())).success(function(r) { 
     _url = r.thumbnail_large 
    }).error(function(e) { 
     console.log(e); 
    }); 

답변

1

아마도 지연의 원인은 ngRepeat 내부에서 너무 많은 요청입니다.

또한
// first prepare 
$scope.properties = $scope.properties.map(function (prop) { 
    prop.thumbnail = VideoParser.getThumbNail(prop.video); 
    return prop; 
}) 

// then in html just use <img ng-src='{{ prop.thumbnail }}'> 

가치 메오 API는이를 쿼리 대신 작은 이미지의 집합을 얻을 수 있는지 확인하려면 한 부산물 :이 경우에 더 나은 전략은 선불 데이터를 준비하고 만 표시하기 위해 반복을 사용하는 것입니다 하나.

+0

브라우저가 여전히 멈추고이 오류가 $ digest() 반복 횟수에 도달했습니다. 중단합니다! –

+0

오류는 다른 곳에있을 수 있습니다. 엄지 손가락을'prop.thumbnail = 'some image'; 맵 내부의 상수로 설정하고 app을 실행하여 Vimeo API에 대한 쿼리로 인해 실패했는지 확인할 수 있습니다. –

+0

위와 같이 Vimeo API에 대한 쿼리가 문제의 원인임을 확인했습니다. –

관련 문제