Вернуть ответ от асинхронного вызова в Javascript - PullRequest
0 голосов
/ 12 ноября 2019

Я пытаюсь вернуть ответ от асинхронной функции на моей главной странице. Я сделал загрузочную страницу с загрузкой информации из 3 датчиков и сохранил ее в 4 различных массивах, 4 из которых является суммой 3 других. Я использую запрос AJAX для получения информации со страницы загрузки. Я сделал асинхронную функцию, чтобы я мог загружать данные в Chart, кстати, я работаю с chart.js, но это не проблема. Ну, старый код, который я создал, не работает, потому что он загружается после, и я не мог использовать информацию из функции, потому что это был Async. В этом старом коде я мог легко хранить массивы со страницы загрузки в массивы на главной странице. Но с этим новым кодом я не могу этого сделать.
Старый код, но при правильных способах я хочу хранить массивы:

$(document).ready(function(){
      $.getJSON("loadchart.php", function(data){
          var sensor1 = data[0];
          var sensor2 = data[1];
          var sensor3 = data[2];
          var sensorsum = data[3];
      });
    });

Новый код, но массивы неt работа:

(async () => {
      async function foo() {
        return $.ajax({
          url: "loadchart.php",
          success: function(data){
           var sensor1 = data[0];
            return sensor1;
          }
        });
      }

    var result = await foo();

    console.log(result);

    //Chart stuff

    var lbl = [<?php echo $labels; ?>];
    var ctx1 = document.getElementById('mychart1').getContext('2d');

    var myLineChart = new Chart(ctx1, {
        type: 'line', 
        data: {
          labels: lbl,
          datasets: [
//Chart stuff down there

Вот как печатаются мои массивы:

[[5,10,10.99,10.99,13,5,14.31,1,1,5,5,5,1,5,3,3,5,5,1,5,10.32,10.32,5,8,5,10,5,5,19,5,7.36,7.36,5,12.2,12.2,2.2,2.2,23.3,5,10.87,6.87,6.87,5,5,10,10,10,10,5,5,5,5,5,0,5,5],

[8,12.5,12.5,12.53,12.53,8,10.11,1,1,8,8,8,1,8,3,3,8,8,1,8,12.83,32.32,8,8,8,10,8.31,8,10,8,18.2,18.2,8,10.3,10.3,2.29,2.29,12.3,8,8.23,2.23,2.23,8,8,10,10,10,20,5,5,5,5,8,0,8,2],

[6,8.86,8.86,8.87,8.87,6,8.33,1,2,6,2,3,1,6,3,8,6,6,1,6,8.32,7.32,6,8,6,10,3.31,6,12,6,12.3,12.3,6,11.1,11.1,4.09,4.09,33.1,6,5.16,12.16,2.16,6,6,10,20,30,30,30,30,5,0,6,0,6,5],

[19,31.36,32.36,32.4,34.4,19,32.76,3,4,19,15,16,3,19,9,14,19,19,3,19,31.47,49.96,19,24,19,30,16.62,19,41,19,37.86,37.86,19,33.6,33.6,8.6,8.6,68.7,19,24.26,21.26,11.26,19,19,30,40,50,60,40,40,15,10,19,0,19,12]]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...