立体主义的回调阵容似乎被取代了

时间:2013-06-28 00:56:25

标签: callback d3.js cubism.js

我正在使用一些静态数据来使用立体主义的 context.metric 函数生成图表。但是,尽管我在回调函数中传入了不同的数组,但所有图表最终都会显示相同的值数组(传入的最后一个数组)。

var metrics = [];
for (var key in toGraph) {
    var m = context.metric(function(start, stop, step, callback) {
        callback(null, toGraph[key]);
    }, key);

    metrics.push(m);
}

toGraph 是一个字典,其中key是每个指标的名称,值是指标值的数组。

最终显示的值始终是我传入的最后一个值数组。

我无法弄清楚出了什么问题。我是否使用 context.metric 错误或使用回调函数错误?非常感谢任何帮助,谢谢!

2 个答案:

答案 0 :(得分:2)

您可以查看此示例 - http://bl.ocks.org/syntagmatic/5803524

答案 1 :(得分:0)

原来这是一个内部循环问题的javascript闭包。

thisthis等示例解释了这个问题。