mirror of
https://github.com/DeNNiiInc/dbgate.git
synced 2026-05-01 15:33:57 +00:00
optimalization
This commit is contained in:
@@ -95,11 +95,15 @@ export { OpenedTabsProvider, useOpenedTabs, useSetOpenedTabs };
|
|||||||
export function useUpdateDatabaseForTab(tabVisible, conid, database) {
|
export function useUpdateDatabaseForTab(tabVisible, conid, database) {
|
||||||
const connection = useConnectionInfo({ conid });
|
const connection = useConnectionInfo({ conid });
|
||||||
const setDb = useSetCurrentDatabase();
|
const setDb = useSetCurrentDatabase();
|
||||||
|
const currentDb = useCurrentDatabase();
|
||||||
const previousTabVisible = usePrevious(!!(tabVisible && connection));
|
const previousTabVisible = usePrevious(!!(tabVisible && connection));
|
||||||
|
|
||||||
if (!conid || !database) return;
|
if (!conid || !database) return;
|
||||||
|
|
||||||
if (!previousTabVisible && tabVisible && connection) {
|
if (!previousTabVisible && tabVisible && connection) {
|
||||||
|
if (currentDb && currentDb.connection && currentDb.connection._id == conid && currentDb.name == database) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
setDb({
|
setDb({
|
||||||
name: database,
|
name: database,
|
||||||
connection,
|
connection,
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import FavoritesWidget from './FavoritesWidget';
|
|||||||
import FilesWidget from './FilesWidget';
|
import FilesWidget from './FilesWidget';
|
||||||
import PluginsWidget from './PluginsWidget';
|
import PluginsWidget from './PluginsWidget';
|
||||||
|
|
||||||
export default function WidgetContainer() {
|
function WidgetContainerCore() {
|
||||||
const currentWidget = useCurrentWidget();
|
const currentWidget = useCurrentWidget();
|
||||||
if (currentWidget === 'database') return <DatabaseWidget />;
|
if (currentWidget === 'database') return <DatabaseWidget />;
|
||||||
if (currentWidget === 'file') return <FilesWidget />;
|
if (currentWidget === 'file') return <FilesWidget />;
|
||||||
@@ -15,3 +15,7 @@ export default function WidgetContainer() {
|
|||||||
if (currentWidget === 'favorites') return <FavoritesWidget />;
|
if (currentWidget === 'favorites') return <FavoritesWidget />;
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const WidgetContainer = React.memo(WidgetContainerCore);
|
||||||
|
|
||||||
|
export default WidgetContainer;
|
||||||
|
|||||||
Reference in New Issue
Block a user