J'ai un fichier sous "modules/test/main/main.js" et je veux récupérer le dossier "test" :

J'ai essayé ce code mais tout ce que je reçois est le dossier main

path.basename(path.dirname('modules/test/main/main.js'))
1
brxnzaz 7 mars 2019 à 12:45

2 réponses

Meilleure réponse

Vous pouvez diviser sur / et déposer le dernier élément car il s'agit du nom du fichier. et que de prendre l'élément du milieu

let path = `modules/test/main/main.js`

let middle = path.split(/\//g)
middle.pop()
console.log(middle[Math.floor(middle.length-1)/2])
0
Code Maniac 7 mars 2019 à 09:50

Vous pouvez utiliser path.join() pour remonter de deux répertoires, puis obtenir le basename du répertoire :

const p = 'modules/test/main/main.js';
const dir = path.basename(path.join(p, '../..')); // 'test'
0
Robby Cornelissen 7 mars 2019 à 10:18