您在路由到组件并加载表格时遇到问题。但是表是空的,没有数据。
我的意思是显示组件/表格。我可以看到数据处于状态(赛季存储)并已加载。如果我刷新页面,我可以显示它们。
顺便说一句,我可以在这个组件之前调度状态,我的问题可以得到解决,或者使用简单的服务来调用 api。但这对我来说不是解决方案。
所以我的问题是=我如何在查看之前显示/加载数据?
我的 assets.state.ts
@Action(SetDevice)
async setDevice({ patchState, dispatch }: StateContext<DeviceDataModel>) {
return await this.deviceListService.getData().subscribe((response: DeviceDataModel) => {
console.log(response);
patchState({
data: response.data,
dataSet: response.dataSet,
offset: response.offset,
size: response.size,
});
dispatch(new SetDeviceSuccess());
});
}
组件 - 将数据设置为状态并将它们加载到表 some.component.ts
ngOnInit(): void {
this.store.dispatch(new SetDevice());
this.getTableData();
}
getTableData() {
this.tableData = this.store.selectSnapshot(DeviceState.getDataDevice);
}
some.component.html
<dynamic-table
style="width: 85%;"
*ngIf="tableData"
[tableData]="tableData.data"
[tableColumns]="tableCols"
[url]="'devicelist'"
></dynamic-table>
提前感谢您的任何帮助或想法。