2015-11-23 55 views
0

我試圖用文件系統來代替圖像數據,但我找不到什麼mistake.how我可以解決未處理的「錯誤」事件與FS在節點JS

下面是代碼

fs.readFile(background, function (err, data) { 
 

 
     fs.writeFile(backgroundImage, backgroundimageBuffer.data, function (err) { 
 

 
      im.resize({ 
 
       srcPath:backgroundImage, 
 
       dstPath: background, 
 
       width: backgroundDimensions.width, 
 
       height: backgroundDimensions.height 
 
      }, function(err, stdout, stderr){ 
 
       if(err) throw err; 
 
       console.log('resized image to fit within ' + backgroundDimensions.width + ' and ' + backgroundDimensions.height); 
 
      }); 
 

 
      console.log("success"); 
 
     }); 
 
    });

錯誤

events.js:141 
 
     throw er; // Unhandled 'error' event 
 
    ^
 

 
Error: spawn convert ENOENT 
 
    at exports._errnoException (util.js:874:11) 
 
    at Process.ChildProcess._handle.onexit (internal/child_process.js:178:32) 
 
    at onErrorNT (internal/child_process.js:344:16)

+2

文件是否存在的背景? – prasun

+0

是的,它已經存在 – Thusithz

回答

1

請確保在可變background該文件存在,也將在該變量backgroundImage寫入成功文件系統之前它是由im處理。

看起來im正在產生一個子進程,並且無法找到源文件。

另外,我建議使用下面的代碼來記錄特定的文件處理錯誤

fs.readFile(background, function (err, data) { 
    if(err){ 
     //this will log specific error to file 
     return console.dir(err); 
    } 
    console.log('background file read'); 
    fs.writeFile(backgroundImage, backgroundimageBuffer.data, function (err) { 
    if(err){ 
     //this will log specific error to file 
     return console.dir(err); 
    } 
     console.log('backgroundImage file written'); 
     im.resize({ 
      srcPath:backgroundImage, 
      dstPath: background, 
      width: backgroundDimensions.width, 
      height: backgroundDimensions.height 
     }, function(err, stdout, stderr){ 
      if(err) {console.log('resized error');console.dir(err); throw err;} 
      console.log('resized image to fit within ' + backgroundDimensions.width + ' and ' + backgroundDimensions.height); 
     }); 

     console.log("success"); 
    }); 
}); 
+0

它存在,我重複檢查, – Thusithz

+0

背景文件讀取 backgroundImage文件寫入 成功 events.js:141 扔er; //未處理'錯誤'事件 – Thusithz

+0

現在我執行重新大小功能 – Thusithz