我最近开始使用NVD3的出色Angular指令来构建D3图表。它们确实很流畅。然而,我在回调方面遇到了很多困难。当我使用nv.addGraph()添加它们时,回调可以正常工作,就像Alex's answer和examples page中所示。我也尝试了这些SO答案中的其他建议,但为了让我们公司的初级程序员更容易理解,我想使用HTML指令,就像github上的示例中展示的那样。类似于这样:
我的作用域中的函数monthCallback试图将属性(如标题)和事件(如点击)附加到图表中的每个.nv-bar。问题是,图表在数据从ajax请求返回之前开始呈现,因此在页面上没有任何.nv-bar时就触发了monthCallback。(注意:无论回调是否用括号声明(即callback="monthCallback" vs. callback="monthCallback()"),似乎都没有区别)
我考虑使用liptga的解决方法或DavidSouther的答案,但将回调链接到转换似乎不是解决这个问题的正确方法。还有其他建议可以使用HTML指令在正确的时间触发回调吗?
<nvd3-multi-bar-chart
data="monthData"
id="monthDataChart"
... other properties ...
callback="monthCallback">
<svg></svg>
</nvd3-multi-bar-chart>
我的作用域中的函数monthCallback试图将属性(如标题)和事件(如点击)附加到图表中的每个.nv-bar。问题是,图表在数据从ajax请求返回之前开始呈现,因此在页面上没有任何.nv-bar时就触发了monthCallback。(注意:无论回调是否用括号声明(即callback="monthCallback" vs. callback="monthCallback()"),似乎都没有区别)
我考虑使用liptga的解决方法或DavidSouther的答案,但将回调链接到转换似乎不是解决这个问题的正确方法。还有其他建议可以使用HTML指令在正确的时间触发回调吗?