1

instafeed.jsinstagram の api と対話するための優れたツールを使用しています。現在、結果をフィルタリングして のみにしようとしていますimage.type === 'video'。私はそれを機能させることができました。limit:10唯一の問題は、セットを満たさないことです。どういうわけか、すべてのタイプ(imageおよびvideo)をプルしてからフィルターを適用している可能性があります。10動画のみにフィルターを適用している間に制限を満たすことはできますか?

var feed = new Instafeed({
  limit: '10',
  sortBy: 'most-liked',
  resolution: 'standard_resolution',
  clientId: 'xxxxx', 
  template:'<div class="tile"><div class="text"><b>{{likes}} &hearts; </b>{{model.user.full_name}}</div><img class="item" src="{{image}}"></div>',
  filter: function(image) {
    return image.type === 'video';
  }
});
4

1 に答える 1

1

あなたは正しいです、filter常にオプションのに適用されlimitます。

これを回避するには、 をより大きな数値に設定してlimitから、余分な画像を後で削除してみてください。

var feed = new Instafeed({
  limit: 30,
  sortBy: 'most-liked',
  resolution: 'standard_resolution',
  clientId: 'xxxxx', 
  template:'<div class="tile"><div class="text"><b>{{likes}} &hearts; </b>{{model.user.full_name}}</div><img class="item" src="{{image}}"></div>',
  filter: function(image) {
    return image.type === 'video';
  },
  after: function () {
    var images = $("#instafeed").find('div');
    if (images.length > 10) {
      $(images.slice(10, images.length)).remove();
    }
  }
});

詳細については、Github でこのスレッドを確認することもできます。

于 2014-11-03T19:45:00.287 に答える