Раньше мои диаграммы обновлялись автоматически, но после некоторых изменений в том, как я анализирую данные, они теперь отображаются только при смене представлений. После некоторого осмотра кажется, что мне нужно вызвать функцию обновления, но я не уверен, как ссылаться на нее и где ее вызывать?
<template>
<div class="container">
<line-chart v-for="(photon,key) in photons" :key="photon.id" :ytitle="key" :data="photon.psVoltage" ytitle="ps-voltage" height="250px"></line-chart>
</div>
</template>
<script>
let psVoltage = [];
let photons = {};
export default {
data() {
return {
photons,
}
},
mounted() {
this.streamData();
},
methods: {
streamData() {
// LIVE PUSH EVENTS
if (typeof (EventSource) !== "undefined") {
var eventSource = new EventSource(
"http://10.10.30.13:8030/v1/Events/?access_token=687b5aeb26375742de5d36b65f");
eventSource.addEventListener('open', function (e) {
console.log("Opened connection to event stream!");
}, false);
eventSource.addEventListener('error', function (e) {
console.log("Errored!");
}, false);
eventSource.addEventListener('ps-voltage', function (e) {
var parsedData = JSON.parse(e.data);
if (parsedData.coreid in photons) {
photons[parsedData.coreid].psVoltage.push([parsedData.published_at, parsedData.data])
} else {
photons[parsedData.coreid] ={}
photons[parsedData.coreid].psVoltage=[]
}
}, false);
}
}
}
}
</script>
<style scoped>
h2 {
text-align: center;
}
</style>