用户转到他们的仪表板页面,我有一个工厂返回该页面的数据。当promise返回表时更新OK,但chart-js不会呈现。
如果我模拟了一些数据并将其放在我的.then()
代码的 之外,那么图表将在页面上呈现,但是将其移到内部并且它没有。
我认为这个问题与运行的这段代码有关...太早了#34;它会在它们返回之前查找lineOptions和lineData。
<canvas linechart=""
options="lineOptions"
data="lineData"
height="260"
responsive="false"
width="1200"></canvas>
我是Angular的新人,而且我不完全确定如何解决这个鸡蛋问题。
如何告诉<canvas>
等到lineData和lineOptions被填充?
我已经尝试过ng-show / ng-hide调用函数来检查数据,但这并不起作用。我也尝试过 - 如果也没有效果。
提前致谢。
答案 0 :(得分:1)
我不确定它在您的代码中的外观。但你是否尝试过做这样的事情?
var chartInstance = new Chart(canvasContext);
// then for your promise object:
{"some deferred object that retrieves the data"}.then(function(data) {
chartInstance.Line(data);
});
参考文档:http://www.chartjs.org/docs/#getting-started-creating-a-chart