Я разрабатываю приложение с electron
и chart.js
. Я подключил кнопку удаления, расположенную в HTML
файле. Когда я нажимаю кнопку, информация удаляется в моем sqlite3
дБ, как шарм. Затем я нажимаю вторую кнопку, чтобы обновить sh мой график. Снова это работает как ожидалось. Я пришел с идеей вызова функции refre sh из функции удаления, но моя диаграмма остается неизменной.
let myLabel = [];
let myValues = [];
function delData() {
var data_firstName = document.getElementById('firstName').value;
const sqlite3 = require('sqlite3').verbose();
let db = new sqlite3.Database('./data.db');
db.run(`DELETE FROM Info WHERE firstName = '${data_firstName}';`, function(err, row) {});
db.close();
refreshData();
}
function refreshData() {
myLabel = [];
myValues = [];
const sqlite3 = require('sqlite3').verbose();
let db = new sqlite3.Database('./data.db');
db.each('SELECT firstName, age FROM Info;', function(err, row) {
myLabel.push(row.firstName);
myValues.push(row.age);
});
db.close();
popChart(myLabel, myValues);
}
function popChart (myLabel, myValues) {
if (typeof testChart !== 'undefined') {
testChart.destroy();
}
let myChart = document.getElementById('myChart').getContext('2d');
testChart = new Chart(myChart, {
type: 'bar',
data: {
labels: myLabel,
datasets: [{
label: 'Age',
data: myValues,
backgroundColor: 'rgba(84, 103, 180, 0.69)'
}]
},
options: {}
});
}