我最近开始使用NVD3的伟大角度指令来构建D3图表.确实他们很光滑.但是我在回调方面遇到了很多困难.当我使用nv.addGraph()添加回调时,回调效果很好,就像在Alex的回答和示例页面中一样.在这些SO答案中,我在其他建议方面也取得了不同的成功.但是为了让我公司的其他初级程序员更容易,我想使用像github上的例子中所示的HTML指令.像这样的东西:
<nvd3-multi-bar-chart
data="monthData"
id="monthDataChart"
... other properties ...
callback="monthCallback">
<svg></svg>
</nvd3-multi-bar-chart>
Run Code Online (Sandbox Code Playgroud)
我的范围中名为monthCallback的函数尝试将属性(如标题和事件,如click)附加到图表中的每个.nv-bar.问题是图表在数据从ajax请求返回之前开始呈现,因此在页面上有任何.nv-bar之前会触发monthCallback.(注意:回调是否用括号声明似乎没有区别,即callback ="monthCallback"与callback ="monthCallback()")
我考虑使用liptga的解决方法,或DavidSouther的答案,但将回调链接到转换似乎是解决这个问题的错误方法.有关使用HTML指令在正确的时间触发回调的任何其他建议吗?