Je souhaite conserver la mémoire persistante (enregistrer la progression de l'utilisateur) dans un fichier .json dans% AppData%. J'ai essayé de faire cela selon this post, mais cela ne fonctionne pas. À des fins de test, je ne travaille qu'avec le stockage d'un objet.Impossible d'écrire/d'ajouter au fichier JSON dans Node Webkit
Le code ci-dessous ne fonctionne pas du tout. Si j'utilise fs.open(filePath, "w", function(err, data) { ...
au lieu de readFile(...
, il crée un fichier json dans% AppData%, mais il n'y écrit rien, c'est toujours 0 octet.
var nw = require('nw.gui');
var fs = require('fs');
var path = require('path');
var file = "userdata.json";
var filePath = path.join(nw.App.dataPath, file);
console.log(filePath); // <- This shows correct path in Application Data.
fs.readFile(filePath ,function (err, data) {
var idVar = "1";
var json = JSON.parse(data);
json.push("id :" + idVar);
fs.writeFile(filePath, JSON.stringify(json));
});
Si quelqu'un a une idée où je suis déconner comme ça, je serais reconnaissant ..
EDIT:
Résolu, grâce à kailniris.
Je cherchais simplement d'analyser un fichier vide
Consultez la console de la page d'arrière-plan à la recherche d'erreurs. Les erreurs de contexte de noeud seront enregistrées là. Faites un clic droit sur la fenêtre puis inspectez la page d'arrière-plan. – kailniris
Uncaught SyntaxError: fin inattendue de l'entrée JSON – angularchobo
Quelle ligne? Il y a un problème avec votre json ou vous voulez analyser une donnée vide comme json. Console.log (données) avant l'analyse – kailniris