memorize grid config

This commit is contained in:
Jan Prochazka
2020-10-10 16:31:11 +02:00
parent 7aec8ccf99
commit 598c48069a
5 changed files with 43 additions and 15 deletions

View File

@@ -0,0 +1,18 @@
import { createGridConfig } from '@dbgate/datalib';
import React from 'react';
const loadGridConfigFunc = (tabid) => () => {
const existing = localStorage.getItem(`grid_${tabid}`);
if (existing) return JSON.parse(existing);
return createGridConfig();
};
export default function useGridConfig(tabid) {
const [config, setConfig] = React.useState(loadGridConfigFunc(tabid));
React.useEffect(() => {
localStorage.setItem(`grid_${tabid}`, JSON.stringify(config));
}, [config]);
return [config, setConfig];
}