Come creare un file JSON o HTML che specchia dinamicamente la struttura della directory dei file per jsTree 3.0 [closed]

0

Sto cercando di creare un file HTML JSON OR che fornisca con precisione la struttura della cartella / file per una directory da utilizzare con jsTree 3.0 (www.jstree.com). Voglio renderlo AJAX / lazy load in modo che ogni cartella di file venga caricata quando l'utente lo richiede. Ogni link in jsTree verrà utilizzato per attivare una funzione. Ci sono alcune buone pagine su Google che menzionano NodeJS, NPM, Grunt, angularJS, expressJS ... la lista continua ... ma è un po 'troppo per me come un principiante.

Avevo cercato di utilizzare i dati HTML per creare la struttura ad albero, ma ancora non so come farlo in modo "dinamico" o lavorare con il lato server. Vorrei controllare la struttura delle directory al caricamento della pagina dopo che il documento è pronto, quindi fare in modo che l'albero legga il file JSON. Potrebbe essere JSON o HTML nella mia mente; finché posso avere funzioni onclick per ogni singolo link.

Come faccio a fare questo? C'è un modo migliore per farlo? Sembra che dovrebbe essere un territorio abbastanza comune ... non solo per un principiante, credo.

    
posta kosataka 18.03.2015 - 21:27
fonte

1 risposta

0

HTML e JSON non sono "linguaggi di programmazione". HTML è un linguaggio di markup e JSON è più una "struttura dati".

Sono "modi standard" per organizzare le informazioni. Non sono lo strumento per organizzarlo.

Dato che stai considerando JSON e HTML, JavaScript sembra un approccio abbastanza buono (anche se potresti usare PHP o Ruby o qualsiasi altra cosa).

Per cominciare, devi essere in grado di viaggiare nelle cartelle interne. I possibili approcci includono la ricorsione e le funzioni che si chiamano a vicenda.

Segue un Gist che fa esattamente questo (Va "dentro" ogni elemento su un albero di cartelle). È in JS, per essere eseguito in NodeJS e ha due funzioni, dir () e dirSync (). dir () è più "puro JS" mentre dirSync () è più facilmente trasferibile ad altri paradigmi di programmazione. link

Non l'ho salvato da nessuna parte, ma ho inserito commenti dove potrebbero essere utili.

Per eseguire questo gist è necessario NodeJS (installa bene su Windows) e nient'altro. Basta salvarlo con un'estensione .js ed eseguire node file.js o semplicemente eseguire node su un terminale e incollare il codice (ma non importa quale, rimuovere l'ultima riga, dir('/something-that-is-not-too-deep'); ).

Inoltre, il nodo non è l'unica opzione, l'ho appena usato poiché mi sembra più semplice iniziare con esso.

Questo dovrebbe aiutarti ad avviare il nodo in esecuzione (oppure a portarlo in un'altra lingua) e ad attraversare le strutture delle cartelle. Quindi è solo questione di salvare correttamente queste informazioni su una variabile.

    
risposta data 19.03.2015 - 07:58
fonte

Leggi altre domande sui tag