#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 в своем вопросе.