0

我正在尝试在我的一个项目中使用“d3.dispatch”功能。我想设置一个自定义事件并使用命名空间将其分派到可用的侦听器。

我这样做了:

var dispatcher = d3.dispatch("period_selected");

刷子.on(“刷子”,函数(){
  var s = Brush.extent()

  // 将事件修补到侦听器
  dispatcher.period_selected(s);

});

// 为命名空间的事件注册监听器
dispatcher.on("period_selected.my_namespace", function(s,f) {

    console.log(event.period_selected);
});

但结果我无法取回 with 命名空间。你有什么主意吗?

提前致谢

4

1 回答 1

1

命名空间不作为参数传递,也不分配给事件。如果您真的喜欢命名空间,那么您应该将其作为参数传递:

dispatch.period_selected(s, "my_namespace")

...然后将在此处提供:

dispatcher.on("period_selected.namespace", function(s, namespace) {
    // Use namespace here
});
于 2013-11-21T21:31:45.373 回答