diff --git a/src/scenes/components/autocomplete/autocomplete-showcase.component.tsx b/src/scenes/components/autocomplete/autocomplete-showcase.component.tsx index 104f6b62..d92982f9 100644 --- a/src/scenes/components/autocomplete/autocomplete-showcase.component.tsx +++ b/src/scenes/components/autocomplete/autocomplete-showcase.component.tsx @@ -1,4 +1,4 @@ -import React from 'react'; +import React, { useCallback } from 'react'; import { StyleSheet } from 'react-native'; import { Autocomplete, @@ -13,20 +13,20 @@ export const AutocompleteShowcase = ( const [value, setValue] = React.useState(props.value); const [data, setData] = React.useState(props.data); - const onSelect = (index: number): void => { - setValue(props.data[index].title); - }; + const onSelect = useCallback((index: number): void => { + setValue(data[index].title); + }, [data]); const RenderComponent = props.renderItem; - const onChangeText = (query: string): void => { + const onChangeText = useCallback((query: string): void => { const visibleData = props.data.filter((item) => { return item.title.toLowerCase().includes(query.toLowerCase()); }); setValue(query); setData(visibleData); - }; + }, [props.data]); const renderOption = (item, index): React.ReactElement => (