Events 使用命名空间分派自定义事件

Events 使用命名空间分派自定义事件,events,event-handling,d3.js,Events,Event Handling,D3.js,我正试图在我的一个项目中使用“d3.dispatch”功能。我要安装 自定义事件,并使用命名空间将其分派到可用的listenres 我这样做: var dispatcher = d3.dispatch("period_selected"); brush.on("brush", function() { var s = brush.extent() // patch the event to listeners dispatcher.period_selected(s); })

我正试图在我的一个项目中使用“d3.dispatch”功能。我要安装 自定义事件,并使用命名空间将其分派到可用的listenres

我这样做:

var dispatcher = d3.dispatch("period_selected"); brush.on("brush", function() { var s = brush.extent() // patch the event to listeners dispatcher.period_selected(s); }); // register listener for the event namespaced dispatcher.on("period_selected.my_namespace", function(s,f) { console.log(event.period_selected); }); var dispatcher=d3.调度(“选择的时段”); on(“画笔”,函数(){ var s=brush.extent() //将事件修补到侦听器 调度程序。所选的周期\u; }); //为具有名称空间的事件注册侦听器 dispatcher.on(“period_selected.my_namespace”),函数(s,f){ console.log(已选择事件周期); }); 但我无法返回名称空间作为结果。你知道吗


提前感谢

名称空间不会作为参数传递,也不会分配给事件。如果您确实喜欢名称空间,则应将其作为参数传递:

dispatch.period\u已选择(“我的命名空间”)

…然后将在此处提供:

dispatcher.on("period_selected.namespace", function(s, namespace) {
    // Use namespace here
});