Обновление диаграммы Dojo из магазина JsonRest

У меня есть диаграмма додзё, которая использует хранилище 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 на самом деле не поддерживает этот тип рабочего процесса.


person PezHead    schedule 16.08.2012    source источник


Ответы (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();
person PezHead    schedule 20.08.2012