我正在尝试解析视频网址并渲染缩略图。它适用于YouTube(虽然我没有实施API文档)。如果视频来自Vimeo,我的浏览器会冻结或有时缩略图为空白。如何在ngRepeat中获取Vimeo视频缩略图?
以下是plunker链接:
http://plnkr.co/edit/R2yDwc4fjz1xBPiVCv60?p=preview
我评论了Vimeo部分,以避免冻结。
$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);
});
答案 0 :(得分: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 }}'>
另外值得一看的是Vimeo API是否允许获取一组缩略图而不是逐个查询它们。