내에 중첩되는 변수를받는 방법,이 코드가 있습니다. 나는 이걸 가지고 잠시 벽에 머리를 두드 리고 있었고, 내가 뭘 잘못하고 있는지 알 수 없다. 내가 아는 한, 코드는 비동기 적이 지 않습니다. html 값은 실제로 다른 함수에서 사용하고있는 html 코드의 문자열이어야합니다.다른 함수 그래서
-2
A
답변
3
콜백 내가 여기 코드에 표시되는 내용에 따라, 비동기 : https://github.com/Osterjour/line-by-line/blob/master/line-by-line.js#L43-L45는
setImmediate(function() {
self._initStream();
});
구문 분석은 이벤트 루프의 다음 "틱"때까지 시작되지 않습니다. 일반적으로 대부분의 콜백은 비동기 적으로 발생한다고 가정하는 것이 좋습니다. 또한 비동기로 에게 기능을 변환 할 수 있습니다 (또는 IMO 더 나은 약속과)
function readLineMemory(cb) {
let html = '';
const loadFile = dialog.showOpenDialog({properties: ['openFile']});
const lr = new LineByLineReader(loadFile[0]);
lr.on('error', err => {
cb(err);
})
.on('line', function (line) { // called every line
const lineParse = JSON.parse(line);
JSONParsed.push(lineParse);
let htmlTabled = tableify(lineParse) + '<hr>';
html = html + htmlTabled;
})
.on('end', function() { // called when file is read fully
html = 'data:text/html,' + html;
cb(null, html);
});
}
:
function readLineMemory() {
return new Promise(function (resolve, reject) {
let html = '';
const loadFile = dialog.showOpenDialog({properties: ['openFile']});
const lr = new LineByLineReader(loadFile[0]);
lr.on('error', err => {
reject(err);
})
.on('line', function (line) { // called every line
const lineParse = JSON.parse(line);
JSONParsed.push(lineParse);
let htmlTabled = tableify(lineParse) + '<hr>';
html = html + htmlTabled;
})
.on('end', function() { // called when file is read fully
html = 'data:text/html,' + html;
resolve(html);
});
});
}
+0
이것은 내 문제를 본질적으로 해결했습니다! 그것이 나를 허용 할 것입니다. – willyb321
관련 문제
- 1. 어떻게 다른 모듈 그래서
- 2. 내가 스크립트 그래서 다른 실행하고자하는 다른 파일
- 3. 그래서,이 코드가 작동 다른
- 4. 한 필드 그래서, 나는이를 다른 사람
- 5. 다른 함수
- 6. 다른 함수
- 7. 다른 함수
- 8. 다른 함수
- 9. 다른 함수
- 10. 그래서
- 11. $ .getJSON (..... PHP 함수) 다른
- 12. C가 다른 함수
- 13. 다른 함수 내부에서 함수 호출
- 14. 다른 함수 안에있는 함수 호출하기
- 15. 다른 함수 내부에서 함수 호출?
- 16. 변수가 다른 함수 인 함수
- 17. 다른 함수 안에 함수 호출하기
- 18. JQuery 함수 다른 함수 호출
- 19. 다른 함수 호출에서 함수 호출
- 20. 함수 배열에서 다른 함수 참조하기
- 21. 그래서
- 22. 그래서,
- 23. 그래서
- 24. 그래서
- 25. 다른 파일에서 함수 실행
- 26. 다른 클래스에서 함수 설정하기
- 27. 다른 클래스의 함수 사용
- 28. 어떻게 파이썬 플라스크 그래서
- 29. 다른 반환 변수가있는 함수
- 30. 다른 필드의 함수 적용
1. 직접 질문에 대답하기 위해, 당신은 둘 수 없습니다 . 특정 문제에 대한 답변 - 비동기 함수이므로 나중에 채워지는 값을 반환 할 수 없습니다. – vlaz
전역을 선언하십시오. '.on ("end")'에서 html의 값을 전역에 할당하십시오. 'return html'을 제거하십시오. 이 질문을 삭제하십시오. 정확히 같은 수십 개의 다른 질문을 읽어보십시오. – Tibrogargan