Repository navigation
Expand file tree
/
Copy pathreadfile.js
More file actions
53 lines (36 loc) · 1.41 KB
/
Copy pathreadfile.js
File metadata and controls
53 lines (36 loc) · 1.41 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
const fs = require('fs');
const async = require('async');
// Objet qui contient les url des fichiers json à traiter
const objectDatas = {data0 : '/datas/data0.json', data1 : '/datas/data1.json'};
var configs = {};
/**
* @function forEachOf - Parcourt un à un les éléments et transmet les données.
* @param {} objectDatas - Liste des URLs des fichiers.
* @param {} value - Donnée transmise
* @param {} key - string | number
* @param {} callback - Convention d'utilisation pour les rappels en JavaScript
*/
async.forEachOf(objectDatas, (value, key, callback) => {
fs.readFile(__dirname + value, "utf8", (erreur, pathData) => {
if (erreur) return callback(erreur);
try {
// Converti en json l'objet récupéré
configs[key] = JSON.parse(pathData);
console.log('Les informations du fichier "' + key + '" ont été transmises et sont :');
console.log(configs[key]);
} catch (e) {
// Retourne le message d'erreur s'il y a un problème à la lecture des données
return callback(e);
}
// Retourne le résultat
callback();
});
}, erreur => {
if (erreur) {
// Récupère tout les messages d'erreur et les affiche dans la console
console.log('Le message est :');
console.log(erreur.message);
/* Une métode peut être implémentée à partir de l'objet configs selon la ou les situation(s) */
//creerFonctionAvec(configs);
}
});