Improve Jotai work (#18205)
This commit is contained in:
+8
-10
@@ -1,21 +1,19 @@
|
||||
import { useCallback } from 'react';
|
||||
|
||||
import { mountedHeadlessFrontComponentIdsState } from '@/front-components/states/mountedHeadlessFrontComponentIdsState';
|
||||
import { jotaiStore } from '@/ui/utilities/state/jotai/jotaiStore';
|
||||
import { useStore } from 'jotai';
|
||||
|
||||
export const useUnmountHeadlessFrontComponent = () => {
|
||||
const store = useStore();
|
||||
const unmountHeadlessFrontComponent = useCallback(
|
||||
(frontComponentId: string) => {
|
||||
jotaiStore.set(
|
||||
mountedHeadlessFrontComponentIdsState.atom,
|
||||
(previousIds) => {
|
||||
const next = new Set(previousIds);
|
||||
next.delete(frontComponentId);
|
||||
return next;
|
||||
},
|
||||
);
|
||||
store.set(mountedHeadlessFrontComponentIdsState.atom, (previousIds) => {
|
||||
const next = new Set(previousIds);
|
||||
next.delete(frontComponentId);
|
||||
return next;
|
||||
});
|
||||
},
|
||||
[],
|
||||
[store],
|
||||
);
|
||||
|
||||
return unmountHeadlessFrontComponent;
|
||||
|
||||
Reference in New Issue
Block a user