2016-05-08 3 views
0

So habe ich ein öffentliches Verzeichnis mit Express und Knoten eingerichtet.Wie bekomme ich die Liste der Dateien in einem statischen Öffentlichen Ordner in Javascript?

So etwas wie das funktioniert gut -

var testImage = new Image(); 

testImage.src = '/images/png/avatar.png'; 

Aber die Sache ist ich ein paar Bilder im Inneren des png-Ordner, die ich erhalten möchten.

Wie konnte ich so etwas tun, gehen über

var imageFolder = new Folder(); 
var imageList = []; 
imageFolder.src = '/images/png'; 

for(var image in imageFolder){ 
    imageList.push(imageFolder[image]) 
} 
+0

Mögliches Duplikat von [alle Dateinamen in einem Verzeichnis mit node.js erhalten] (http://stackoverflow.com/questions/2727167/getting-all-filenames-in-a-directory-with-node-js) –

+0

Das würde auf der Serverseite sein, versuche ich auf sie auf der Clientseite zuzugreifen, also gibt es kein Dateisystem – joe

+0

Sie können ein Serververzeichnis auf dem Front-End nicht auflisten, Sie müssen Dateien auf Back-End auflisten und sie als JSON zurückgeben zum Front-End und von dort aus kann man arbeiten. –

Antwort

-1

Sie fs.readdir verwenden können, um das Verzeichnis zu lesen, würde Ihr Beispiel sein:

Async (empfohlen):

var fs = require('fs') 
fs.readdir('/images/png', function (err, images) { 
    if (err) { 
    return console.error(err) 
    } 
    var imageList = [] 
    images.forEach(function (image) { 
    var imageObject = new Image() 
    imageObject.src = '/images/png/' + image 
    imageList.push(imageObject) 
    }) 
}) 

Sync :

var fs = require('fs') 
var images = fs.readdirSync('/images/png') 
var imageList = [] 
images.forEach(function (image) { 
    var imageObject = new Image() 
    imageObject.src = '/images/png/' + image 
    imageList.push(imageObject) 
}) 
Verwandte Themen