Quantcast
Channel: Active questions tagged react-native+typescript - Stack Overflow
Viewing all articles
Browse latest Browse all 6287

(React Native - Expo) The last seleted object is not added to hook array

$
0
0

When Im trying to add objects to a hook inside a component it works fine - kinda.It seems that no matter what i do to get the hook updated with the whole array of selected items. It is always missing the last selected object. This is also when removing object.

So let's say I choose item 1, 2, 5 - Then the hook is missing 5let's say I choose 1, 2, 4, 5 but then deselect 2 then the hook got all the selected but didnt deselect item 2.

Here is my code..

const [selected, setSelected] = React.useState<string[]>()React.useEffect(() => {    const getBrands = async () => {       const user = await getUser()       setSelected(user?.brands)    }    getBrands()}, [])const toggleSelection = async(item: string) => {    console.log("clicked: ", item)        if (selected === undefined){            setSelected([item])        }        if (selected?.includes(item)) {            setSelected(selected.filter((i) => i !== item))        } else {            setSelected([...selected, item])        }        await updateUser({brands: selected}) }

And this is the console output:

 clicked:  2    Updating with  Object {"brands": Array ["1","3","5",    ],    }clicked:  4Updating with  Object {"brands": Array ["1","3","5","2",  ],

Viewing all articles
Browse latest Browse all 6287

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>