Как записывать данные в json Ionic5

#javascript #arrays #json #angular #ionic5

#javascript #массивы #json #angular #ionic5

Вопрос:

У меня есть элементы массива, приведенные ниже

     writeFile1() {
    this.testnames = [{name : "sheldon", age : "10"}, {name : "Simon", age : "11"}]

    this.file.writeFile(this.file.tempDirectory, './assets/data/demo.json', JSON.stringify(this.testnames))
};

testnames:any;
  

Мне нужно сохранить «testnames» в файл json, который находится по адресу «assets / data / demo.json». так что я не знаю, как это сделать! кто-нибудь знает это, пожалуйста, помогите мне.

спецификация:

Ionic5

Angular 10

Комментарии:

1. можете ли вы добавить минимальные шаги воспроизведения в stackblitz.com ?

Ответ №1:

Если вы используете npm диспетчер пакетов, вы можете сделать это через file-saver . Просто выполните установку file-saver пакета :

 npm install file-saver --save
  

Затем импортируйте file-saver соответственно:

 import { saveAs } from 'file-saver';

const jsonObject: any = [{name : "sheldon", age : "10"}, {name : "Simon", age : "11"}];

const blob = new Blob([JSON.stringify(jsonObject)], {type : 'application/json'});
saveAs(blob, 'demo.json');
  

Имейте в виду, что веб-браузер не имеет разрешения на запись содержимого в указанное местоположение. Вместо этого вы можете создать объект File в самом браузере и загрузить его соответствующим образом. Если это веб-браузер, он будет загружен в ваше местоположение загрузки по умолчанию. Я предоставляю здесь решение на основе Angular, поскольку вы упомянули angular в своем вопросе.