Angular 关于数据驱动文档(D3)的问题单击事件

Angular 关于数据驱动文档(D3)的问题单击事件,angular,d3.js,ionic-framework,ionic2,Angular,D3.js,Ionic Framework,Ionic2,我正在使用Js库。我绘制了一个条形图,如下图所示。它工作正常。现在我需要通过事件发布将此数据数组发送回父组件。但这里的问题是当我单击条形图项时,this.data的值是未定义的。这是正确的。但是,当用户单击条形图项目时,您能告诉我如何将特定数组(this.data)发送回父组件吗 for (var i = 0; i < this.data.length; i++) { var item = this.data[i]; this.svg.app

我正在使用Js库。我绘制了一个条形图,如下图所示。它工作正常。现在我需要通过
事件发布
此数据
数组发送回父组件。但这里的问题是当我单击条形图项时,
this.data
的值是
未定义的
。这是正确的。但是,当用户单击条形图项目时,您能告诉我如何将特定数组(
this.data
)发送回父组件吗

for (var i = 0; i < this.data.length; i++) {
            var item = this.data[i];
            this.svg.append("rect")
                .attr("class", "interval")
                .attr("y", offset + item['start'] * max_height / 86400)
                .attr("x", horz_inset)
                .attr("height", item['length'] * max_height / 86400)
                .attr("width", width - 2 * horz_inset)
                .on("click", function () {
                   this.events.publish('intervals', this.data);
                });
        }
for(var i=0;i
您是否尝试使用箭头函数来保留上下文?是的,它正在工作。请将其作为答案。非常感谢:)@yurzuiDid您尝试使用箭头函数来保留上下文吗?是的,它正在工作。请将其作为答案。非常感谢:)@yurzui