Как сохранить данные в файл JSON? - PullRequest
0 голосов
/ 08 сентября 2018

Мне нужно сохранить данные JSON в файл .json после преобразования объекта в строку с помощью JSON.stringify

Это мой текущий код:

const jsonObject: object = {
      'countryName': 'Switzerland',
      'users': [
        {
          'id': 1,
          'name': 'Basel',
          'founded': -200,
          'beautiful': true,
          'data': 123,
          'keywords': ['Rhine', 'River']
        },
        {
          'id': 1,
          'name': 'Zurich',
          'founded': 0,
          'beautiful': false,
          'data': 'no',
          'keywords': ['Limmat', 'Lake']
        }
      ]
    };

const myData = JSON.stringify(jsonObject);

Примечание: я хочу сохранить эти данные динамически, и я привык к jsonConverter из jsonTypescript2.

Я пытался использовать этот метод: -

let a = document.createElement('a');

// JSON.stringify(jsonObject), 'ex.json' // another
a.setAttribute('href', 'data:application/json;charset=UTF-8,' + encodeURIComponent(myData));

Ответы [ 2 ]

0 голосов
/ 09 сентября 2018

Хорошо, после 6 дней назад я нахожу лучшее решение, как подключиться между Angular 6 и Node.js + json File напрямую и динамически .

npm install file-saver --save
import { saveAs } from 'file-saver';


const jsonObject: object = {
      'City': [
        {
          'id': 1,
          'name': 'Basel',
          'founded': -200,
          'beautiful': true,
          'data': 123,
          'keywords': ['Rhine', 'River']
        },
        {
          'id': 1,
          'name': 'Zurich',
          'founded': 0,
          'beautiful': false,
          'data': 'no',
          'keywords': ['Limmat', 'Lake']
        }
      ]
    };


const blob = new Blob([JSON.stringify(jsonObject)], {type : 'application/json'});
saveAs(blob, 'abc.json');
0 голосов
/ 08 сентября 2018

Вы можете использовать fs.js модуль NPM для записи данных в файл

Есть много деталей в API файловой системы . Наиболее распространенный способ (насколько я знаю) это:

var fs = require('fs');
fs.writeFile("/fileName.json", myData, function(err) {
    if(err) {
        return console.log(err);
    }

    console.log("The file was saved!");
}); 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...