javascript - כתיבת קובץ JSON מחדש ב-React/TypeScript/Webpack


אני עובד על פרויקט React וקורא קובץ JSON בלי בעיה. אני גם יכול לבצע בו שינויים. אבל כשמדובר לכתוב אותו חזרה, אני לא יכול לעשות זאת. ניסיתי fs.writeFile אבל זה גם לא עובד. יש קוד דוגמה, אני יכול רק להפעיל הורדת קובץ, שזה לא מה שאני רוצה. מקווה שאתם יכולים לעזור

public CreateEntry(){
    var txt = JSON.stringify(data);
    var parsedtxt = JSON.parse(txt || '{}');
    var indexLength = parsedtxt.kitaplar.length;

    var book = document.getElementById("createName") as HTMLInputElement;
    var writer = document.getElementById("createWriter") as HTMLInputElement;
    var publisher = document.getElementById("createPublisher") as HTMLInputElement;

    parsedtxt.kitaplar.push({
        "kitap": book.value,
        "yazar": writer.value,
        "yayinevi": publisher.value
    });

    var resultTxt = JSON.stringify(parsedtxt);
    var file = new File([resultTxt],"kitap.json", {type: "text/plain;charset=utf-8"});
    FileSaver.saveAs(file);

}

תשובה #1

דפדפנים אינם מספקים ממשקי תכנות יישומים (APIs) לגישה למערכת הקבצים. לכן, לצערנו, כתיבה לקבצים אינה אפשרית כיום.

הייתה ספריית מפרט של API למערכת קבצים, אך היא כבר אינה נמצאת בתהליך תקינה.

תשובה #2

איך אתה מיישם את fs.writeFile?

קח בחשבון שראשית עליך לדרוש את הפונקציונליות: const fs=require('fs');

אז הקוד צריך להיות משהו כזה: fs.writeFile('localFile.json', json, 'utf8', modifiedJson);