Узлы: Я получаю ошибку "FSReqWrap.readFileAfterClose", когда пытаюсь прочитать файл json - PullRequest
0 голосов
/ 09 октября 2018

Я пытаюсь добавить объекты в файлы JSON.

Например, у меня есть файлы JSON, такие как:

{
    "_1": {
        "watch" : "undefined"
    },
    "_2": {
        "watch" : "undefined"
    }
}

, и это часть моего app.js, которая не 't работа:

app.post('/add2', (req, res) => {
    storeAt = path.join(__dirname + '/json/' + req.body.addTo + '.json');

    id = req.body.id;
    i = req.body.i;

    fs.readFile(storeAt, (err, data) => {
        console.log("data: " + data);
        var temp = JSON.parse(data);
        temp = temp.substring(0, temp.length - 2);
        temp += ',\n\t"_' + i + '": {\n\t\t"watch" : "' + id + '"\n\t}\n}';

        fs.writeFile(storeAt, JSON.stringify(temp));

});

Так что в основном я хочу прочитать файл и сохранить его в переменной, затем удалить последний символ, добавить что-то новое и сохранить его.

console.log("data : + data); работает просто отлично;содержимое файла JSON отображается на консоли.Но проблема в соответствии с .substring.Я получаю эту ошибку в консоли:

TypeError: temp.substring is not a function
at fs.readFile (C:\...\app.js:56:21)
at FSReqWrap.readFileAfterClose [as oncomplete] (fs.js:442:3)

Я не смог найти никакой помощи в Интернете, и я действительно не понимаю TypeError.Кто-нибудь может помочь?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...