mirror of
https://github.com/CommunityOx/ox_lib.git
synced 2026-08-17 06:56:03 +01:00
fix(web/menu): debounce menu item selected callback
This commit is contained in:
@@ -95,16 +95,19 @@ const ListMenu: React.FC = () => {
|
||||
}
|
||||
};
|
||||
|
||||
// TODO: add debounce so that callbacks can't be spammed
|
||||
useEffect(() => {
|
||||
if (!menu.items[selected]?.value) return;
|
||||
listRefs.current[selected]?.focus();
|
||||
fetchNui(
|
||||
"changeSelected",
|
||||
Array.isArray(menu.items[selected].value)
|
||||
? menu.items[selected].value[indexStates[selected]]
|
||||
: menu.items[selected].value
|
||||
);
|
||||
// debounces the callback to avoid spam
|
||||
const timer = setTimeout(() => {
|
||||
fetchNui(
|
||||
"changeSelected",
|
||||
Array.isArray(menu.items[selected].value)
|
||||
? menu.items[selected].value[indexStates[selected]]
|
||||
: menu.items[selected].value
|
||||
);
|
||||
}, 500);
|
||||
return () => clearTimeout(timer);
|
||||
}, [selected, menu, indexStates]);
|
||||
|
||||
useNuiEvent("setMenu", (data: MenuSettings) => {
|
||||
|
||||
Reference in New Issue
Block a user