2017-10-14 3 views
0

PapaParse에서 데이터를 가져올 수 없습니다. 설명서에 함수가 아무 것도 반환하지 않는다고합니다. 이 데이터를 로컬 변수에 저장하려고합니다. 이 코드는 :papaparse에서 데이터 가져 오기를 사용하십시오.

papaparse.parse(myData, { 
      download: true, 
      delimiter: '\t', 
      complete: function (results) { 
      console.log(results.data); 
      } 
     }); 

내가

 let newRes; 
     papaparse.parse(myData, { 
      download: true, 
      delimiter: '\t', 
      complete: function (results) { 
      console.log(results.data); 
      newRes = results.data; 
      } 
     }); 
console.log(newRes); //undefined 
+2

가능한 중복 https://stackoverflow.com/questions/14220321/how-do-i-return-the-response-from-an -asynchronous-call) – Andreas

답변

1

여기서 문제가 호출 (newRes를) CONSOLE.LOG 때 변수 newRes가 아직 할당되지 않는 것입니다 할 시도 무엇. 파일의 로딩 및 구문 분석은 console.log (...)가 실행될 때마다 실행됩니다.

전체 콜백의 결과로 수행하려는 모든 작업을 수행하는 것 외에 다른 옵션은 없습니다.

코드를 더 깨끗하게 보이게하려면 다음을 수행하십시오.

function handleResult(results) { 
    console.log(results.data); 
    // ... do your logic here 
} 

papaparse.parse(myData, { 
     download: true, 
     delimiter: '\t', 
     complete: handleResult 
}); 
[I 비동기 호출의 응답을 반환합니까?] (의
+0

이제는 'handleResult'가 정의되어 있지 않습니다. no-undef' – EnzyWeiss

+0

오, 죄송합니다. 나는 '이'를 사용하지 않았습니다. 괜찮아, 고마워. – EnzyWeiss