Fixed the refresh bug

This commit is contained in:
Hein
2025-10-30 14:53:42 +02:00
parent 0ba8dca0b4
commit abcf08f98e
4 changed files with 18 additions and 16 deletions

View File

@@ -135,7 +135,7 @@ export interface GridlerState {
_gridSelectionRows?: GridSelection['rows'];
_loadingList: CompactSelection;
_page_data: Record<number, Array<any>>;
_refresh: () => void;
_refresh: () => Promise<void>;
_scrollTimeout?: any | number;
_visibleArea: Rectangle;
_visiblePages: Rectangle;
@@ -219,12 +219,11 @@ const { Provider, useStore: useGridlerStore } = createSyncStore<GridlerStoreStat
_events: new EventTarget(),
_loadingList: CompactSelection.empty(),
_page_data: {},
_refresh: () => {
_refresh: async () => {
const s = get();
s.loadPage(0, 'all').then(() => {
s.refreshCells();
s.reload?.();
});
await s.loadPage(0, 'all');
await s.refreshCells();
await s.reload?.();
},
_visibleArea: { height: 10000, width: 1000, x: 0, y: 0 },
_visiblePages: { height: 0, width: 0, x: 0, y: 0 },
@@ -717,9 +716,11 @@ const { Provider, useStore: useGridlerStore } = createSyncStore<GridlerStoreStat
isDivider: true,
},
{
id: 'refesh',
label: `Refresh`,
onClickAsync: async () => {
await s._refresh?.();
onClick: () => {
const s = get();
s._refresh?.();
},
},
];