通过Angular从IndexedDB获取/读取JSON文件
我想读/写一个JSON文件,它是从IndexedDB中的框架(Godot3.1)保存的 我使用Angular和Ngx索引数据库获得如下文件:通过Angular从IndexedDB获取/读取JSON文件,json,angular,indexeddb,godot,Json,Angular,Indexeddb,Godot,我想读/写一个JSON文件,它是从IndexedDB中的框架(Godot3.1)保存的 我使用Angular和Ngx索引数据库获得如下文件: import { Component, OnInit } from '@angular/core'; import { NgxIndexedDB } from 'ngx-indexed-db'; @Component({ selector: 'app-database', templateUrl: './database.component
import { Component, OnInit } from '@angular/core';
import { NgxIndexedDB } from 'ngx-indexed-db';
@Component({
selector: 'app-database',
templateUrl: './database.component.html',
styles: ['./database.component.scss']
})
export class DatabaseComponent implements OnInit{
constructor() { }
ngOnInit() {
let db = new NgxIndexedDB('/userfs');
db.openDatabase(21, evt => {
/* Do something */
}).then(function(){
db.getAll('FILE_DATA', 1).then(
FILE_DATA => {
console.log(FILE_DATA);
},
error => {
console.log(error);
});
});
}
}
但结果不是json文件:
我想从IndexedDB读取并解析json,如果我能在IndexedDB中再次保存修改后的json文件,那就太好了。有人能帮忙解决这个问题吗 解决方案:
import { Component, OnInit } from '@angular/core';
import { NgxIndexedDB } from 'ngx-indexed-db';
@Component({
selector: 'app-database',
templateUrl: './database.component.html',
styles: ['./database.component.scss']
})
export class DatabaseComponent implements OnInit{
constructor() { }
ngOnInit() {
let db = new NgxIndexedDB('/userfs');
db.openDatabase(21, evt => {
/* Do something */
}).then(function(){
db.getAll('FILE_DATA').then(
FILE_DATA => {
let levelSpec = new TextDecoder().decode(FILE_DATA[1].contents)
console.log(levelSpec);
},
error => {
console.log(error);
});
});
}
}
结果将是解析的json文件: