0

我有一个使用 JsonRest 存储(具体来说是 /dojo/store/JsonRest)来填充系列的道场图表。商店设置有定期自我更新的间隔。虽然它确实拉回了正确的数据,但图表没有正确更新。我最初的印象是简单地更新商店应该更新图表。当这没有发生时,我尝试像这样手动更新系列,但它只会导致所有图形点都设置为 y 值为零:

var jStore = new JsonRest( {target: "/TestExecutionSummary/" } );
jStore = Observable(jStore);

// Creating chart
...
...
chart.addSeries("y", new dojox.charting.StoreSeries(jStore, { query: {} }, "totalPassed"));


var interval = setInterval(function() {
  var updates = jStore.query({});
  updates.then(function(result) {
    chart.updateSeries("y", result, true).render();
  });
}, 3* 1000);        

有什么方法可以让图表使用新商店进行自我更新,或者 JsonRest 商店是否真的不支持这种类型的工作流程。

4

1 回答 1

1

我觉得这有点像黑客,但以下对我有用。我没有创建内联的 StoreSeries 实例,而是创建了一个单独的实例,然后我可以通过调用其 fetch() 方法手动更新该实例。

// Creating chart
...
var mySeries = new StoreSeries(testExecutionSummaryStore, { query: {} }, "totalTests");
chart.addSeries("Total Test Count", mySeries, {plot:"total"});
...

// Call this in the interval to update the chart
mySeries.fetch();
于 2012-08-20T19:51:30.250 回答