Redis には映画の ID の [1,2,3,4]
セットと、実際のデータを含むハッシュのセットがあります。ここで、ID のすべての動画データを一度に取得したいと考えています。
ブルーバードの約束を使おうとしていますが、行き詰まりました。これまでのところ、私は持っています:
関数 allMovies() { var ムービー、movieIds; return client.smembersAsync('movies.ids').then(function(ids) { movieIds = ID; ムービー = _.map(movieIds, function(id) { var ムービー; return client.hmgetAsync("movies:" + id, 'title', 'description', 'director', 'year').done(function(data) { 映画 = データ; 戻る { タイトル: データ[0], 説明: データ[1]、 ディレクター: データ[2]、 年: データ[3] }; }); 映画を返す; }); }))
問題は、すべての操作が完了した後、JSON に興味があるだけなのに、常に新しい約束を返すことです。
ここにいる誰もがこれに光を当てることができますか?