2016-05-24 7 views
0

Ich möchte einen Ordner-Chooser erstellen, um einen oder sogar mehrere Ordner auf der Serverseite auszuwählen und deren Pfad abzurufen. Dazu brauche ich eine Art FolderPicker oder eine FolderTreeView.Komplettes Dateisystem des Servers anzeigen und Pfad der Ordner abrufen

Ich versuchte jQuery File Tree (www.abeautifulsite.net/jquery-file-tree/), aber ich bekomme nur die Ordnerstruktur von meinem Projekt root. Ist es mit fs sogar möglich, auf etwas außerhalb des Projektordners zuzugreifen?

Ich würde mich über jede kleine Information freuen.

+1

Es ist __NOT SECURE__. –

+0

Ich verstehe Ihre Bedenken, aber ich entwickle diese WebApplication für ein geschlossenes Netzwerk mit nur vertrauenswürdigen Personen, die es verwenden. – holymio

Antwort

0

Ich hoffe, dass es Ihnen helfen kann.

Mögliche doppelte: https://stackoverflow.com/a/21459809/5228251

Unten Funktion wurde von dem^Link oben genommen.

var _getAllFilesFromFolder = function(dir) { 

    var filesystem = require("fs"); 
    var results = []; 

    filesystem.readdirSync(dir).forEach(function(file) { 

     file = dir+'/'+file; 
     var stat = filesystem.statSync(file); 

     if (stat && stat.isDirectory()) { 
      results = results.concat(_getAllFilesFromFolder(file)) 
     } else results.push(file); 

    }); 

    return results; 
}; 

Nutzung: _getAllFilesFromFolder(__dirname + '/' + 'foldername');

^die obige Funktion liefert Ergebnisse als Array Pfade jedes einzelnen Datei in dem ‚folder‘ Verzeichnis enthält .. und parsen es gemäß der js/jquery Bibliothek (configs) die Sie vor dem Rendern auf der Client-Seite verwenden.

und dann können Sie eine beliebige js-Bibliothek verwenden, um in der Baumstruktur auf der Client-Seite anzuzeigen. Ich habe jstree in meinem Projekt einige Monate zurück verwendet. Sie können auch andere als jquery-fileTree oder etc.

verwenden Sie jade/html (was auch immer Sie wollen) mit Express, um die resultierenden Daten zu sehen.

Hier ist mein Code der abgerufenen in Baum (Verzeichnis) Struktur-Format zu konvertieren:

https://gist.github.com/narainsagar/79d742ab9c62e29a81d1b1bba804782f

Dank.

Verwandte Themen