我将秋田用作Angular应用程序的状态管理。 状态数据以及通过localForage的IndexedDB中的数据存储都可以。 但是当我再次刷新应用程序并尝试从状态查询数据时,除了IndexedDB中的数据,没有其他数据正在检索。
{
"localforage": "^1.7.3",
"@datorama/akita": "^4.6.0"
}
//store.ts
@Injectable({ providedIn: 'root' })
@StoreConfig({ name: 'MyStore1' })
export class MyStore1 extends Store<MyStore1State> {
constructor(private appConfig:AppConfig) {
super(createInitialState(JSON.stringify(json)));
localForage.config({
driver: localForage.INDEXEDDB,
name: 'Akita',
storeName:'AppDataStore'
});
persistState({key:this.storeName,include:[this.storeName], storage: localForage });
}
}
//query.ts
@Injectable({ providedIn: 'root' })
export class StoreQuery extends Query<StateModel> {
constructor(protected store: MyStore1) {
super(store);
}
getStateKey(key) {
return this.getValue()[key];
}
}
//component.ts
constructor(private storeQuery: StoreQuery) { }
isStateObjectExists(message: MessageModel) {
switch (message.EntityType) {
case "MyStore1":
var data = this.storeQuery.getStateKey(message.UserID);//from here retriving null
if (data != null) {
message.Payload = JSON.stringify(data);
return message;
}
break;
default: break;
}
return false;
}
请帮忙。