여러 파일의 URL을 유지하는 배열이 있습니다. 예 :노드에서 여러 파일 비동기 읽기 및 캐싱
var files = ['1.html', '2.html', '3.html'];
비동기 적으로 읽고 캐시 (cache = {})라는 개체에 저장해야합니다. 이 범위의 내가 루프 후 "ReadFile을"행위가 종료되는 것을 이해한다
cache = { undefined : 'File 3 content' }
하고 푼다 : 나는 결과를
for(var i = 0; i < files.length; i++){
require('fs').readFile(files[i], 'utf8', function (error,data) {
cache[files[i]]=data;
});
}
결국 : 는이를 위해 나는 코드를 사용 . 이 방법이나 다른 방법으로 배열의 파일을 읽고 캐시 할 수있는 방법이 있습니까?
덕분에, 작동) – micnic
내가 비동기를 사용하고는 있지만, 나는 ReadFile을 함수에 인수로 'UTF8'을 통과해야 어떻게해야 이 작업을 수행? – jeroen
@jeroen : 'utf8'을 전달하는 도우미 함수를 만들어야합니다. 'function read (file, callback) {fs.readFile (file, 'utf8', callback)}'과 같은 것입니다. * 편집 * : 편집 된 게시물보기! –