我正在尝试使用 redis 作为数据源使用 node.js 构建一个多维数组。但是,我做得不对。
menuKey 包含包含 redis 中排序集的键,排序集包含引用其他键的值。例如:
menu:main:sections contains ["menu:main:section1","menu:main:section2"]
menu:main:section1 contains ["option1", "option2"]
menu:main:section2 contains ["option1"]
我正在尝试构建的数组:
[["option1", "option2"], ["option1"]]
这是我拥有的代码,但我以某种方式放置了错误的回调?
function handleMenu(jsonrpc) {
var params = jsonrpc['params'];
var result = [];
var sections = [];
menuKey = 'menu:' + params['menu'] + ':sections';
async.series([
function (callback) {
redis.zrevrange(menuKey, 0, -1, function(err, sections) {
async.forEachSeries(sections, function(section, sectionCallback) {
redis.zrevrange(section, 0, -1, function(err, items) {
result.push(items);
sectionCallback();
});
}, callback);
});
}
], function() {
console.log(result);
});
}
我看不出我做错了什么,请指教。