нужна помощь ... я не могу заполнить этот массив unarr.push (querySnapshot.size);чтобы получить количество пользователей на район, чтобы создать диаграмму.Новичок в javascript, следовательно, может отсутствовать нечто очень тривиальноеМожет кто-нибудь помочь исправить это?
<!--Load the AJAX API-->
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<script type="text/javascript">
// Load the Visualization API and the corechart package.
google.charts.load('current', {'packages':['corechart']});
// Set a callback to run when the Google Visualization API is loaded.
google.charts.setOnLoadCallback(drawChart);
// Callback that creates and populates a data table,
// instantiates the pie chart, passes in the data and
// draws it.
function drawChart() {
db.collection("district").get().then(function(querySnapshot) {
// Create the data table.
var data = new google.visualization.DataTable();
data.addColumn('string', 'District Name');
data.addColumn('number', 'Users');
data.addRows([['Mushrooms', 3]]);
var dtarr = [];
dtarr = snapshotToArray(querySnapshot);
var unarr = [];
querySnapshot.forEach(
function(doc) {
db.collection("users").where("district", "==", doc.id).get().then(
function(querySnapshot) {
// this output to stored and returned to unarr[] array object
alert(querySnapshot.size);
unarr.push(querySnapshot.size);
});
});
var i = 0;
for (i = 0; i < dtarr.length; i++) {data.addRows([[dtarr[i],unarr[i]]]);}
// Set chart options
var options = {'title':'District wise split of registered user', 'height':500};
// Instantiate and draw our chart, passing in some options.
var chart = new google.visualization.ColumnChart(document.getElementById('chart_div'));
chart.draw(data, options);
});
}
</script>