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 に興味があるだけなのに、常に新しい約束を返すことです。
ここにいる誰もがこれに光を当てることができますか?