How do you use this assigns? I mean, how AnalyticsChart.buildChart() reads this assigns values?
it reads from html page using javascript like this in analytics-chart.js
import Chart from "chart.js"
let AnalyticsChart = {
buildChart() {
let ctx = document.getElementById("analyticsChart");
let labels = ["sent", "delivered", "undelivered", "clicks"];
let total_sent = parseInt(document.getElementById("total-sent").dataset.totalSent);
let delivered = parseInt(document.getElementById("deilvered-count").dataset.deliveredCount);
let undelivered = parseInt(document.getElementById("undelivered-count").dataset.undeliveredCount);
let clicks = parseInt(document.getElementById("total-clicks").dataset.totalClicks);
let counts = [total_sent, delivered, undelivered, clicks];
console.log("Is chart working?");
let chart = new Chart(ctx, {
type: 'doughnut',
data: {
labels: labels,
datasets: [{
data: counts,
backgroundColor: [
'rgba(54, 162, 235, 0.5)',
'rgba(255, 206, 86, 0.5)',
'rgba(255, 99, 132, 0.5)',
'rgba(75, 192, 192, 0.5)'
]
}]
},
options: {
}
});
}
}
export default AnalyticsChart
What is the return value of this exec_js/2?
error] Drab Handler failed with the following exception:
** (Drab.JSExecutionError) AnalyticsChart is not defined
(drab) lib/drab/exceptions.ex:16: Drab.JSExecutionError.result_or_raise/1
(drab) lib/drab.ex:323: anonymous fn/7 in Drab.handle_event/6
I just switched to bang version exec_js!/2


















