2016-10-16 8 views
-2

ディレクトリのすべての画像を削除しようとしています。しかし、ディレクトリパスにエラーが発生しました。また、すべての写真のパスを取得する方法を知っていない&それらのすべてを削除します。ディレクトリのすべての画像を削除するには

私のディレクトリ構造:

server 
    -> app.js 
tmp 
    -upload 
    -- pic.jpg 
    -- pic2.jpg 
    -- pic3.jpg 

私はこれを試してみました:

var dir = require('../tmp/upload'); 
var fs = require('fs'); 
var promise = require('bluebird'); 
fs.readdir(dir).then(function(file) { 
    console.log(data) 

}).catch(function(err){ 
    console.log 
}) 

しかし、エラーを取得:モジュールの../tmp/upload」を見つけることができません

を取得するにはヘルプが必要ですパス&アップロードフォルダ&上のすべての画像を削除します。あなたが実際にそれを解決するのではなく、相対パスからモジュールを必要なので、あなたは、単にこのエラーを得た事前

+0

app.jsがtmpと同じレベルの場合は、代わりに./tmp/uploadを使用します。 ..は、現在のコードが実行されているフォルダの外に出て行きます。 –

+0

app.jsはサーバーフォルダにあります。アップロードフォルダはtmpフォルダにあります。だから、パスは何ですか? サーバー - > app.js tmpの -upload - pic.jpg –

+0

のでapp.jsとtmpが同じフォルダ内にサーバーと呼ばれていますか? –

答えて

2

感謝。相対パスを絶対パスに変換するには、path.resolveではなく、requireを使用する必要があります。

var path = require('path'); 
var dir = path.resolve('../tmp/upload'); 
関連する問題