here is my code:import React, {useState} from 'react';
import {
Text,
View,
StyleSheet,
FlatList,
ActivityIndicator,
TextInput,
} from 'react-native';
const namesData = [
{fname: 'Sujay', lname: 'Atkare'},
{fname: 'Pankaj', lname: 'Bhardwaj'},
{fname: 'Sagar', lname: 'Vande'},
{fname: 'Rohit', lname: 'Dhanke'},
{fname: 'Uday', lname: 'Kadam'},
{fname: 'Abhijeet', lname: 'Shah'},
{fname: 'Kundan', lname: 'Zalate'},
{fname: 'Sneha', lname: 'Shinde'},
{fname: 'Akshay', lname: 'Singh'},
{fname: 'Dilip', lname: 'Patil'},
{fname: 'Imran', lname: 'Khan'},
{fname: 'Saurabh ', lname: 'Kulkarni'},
];
const SearchBarScreen = () => {
const [data, setData] = useState([]);
const [value, setValue] = useState('');
const _onRenderSeparator = () => {
return (
<View
style={{
height: 1,
width: '100%',
backgroundColor: 'pink',
}}
/>
);
};
const _searchData = text => {
if (text) {
let newList = namesData.filter(item => {
const newItem = `${(item.fname + '' + item.lname).toUpperCase()}`;
const textData = text.toUpperCase();
return newItem.indexOf(textData) > -1;
});
setData(newList);
setValue(text);
} else {
setData([]);
setValue(text);
}
};
const _onRenderHeader = () => {
return (
<TextInput
style={{height: 60, borderColor: '#000', borderWidth: 1}}
placeholder="Search here"
onChangeText={text => _searchData(text)}
value={value}
/>
);
};
return (
<View
style={{
flex: 1,
padding: 25,
width: '98%',
alignSelf: 'center',
justifyContent: 'center',
}}>
<FlatList
data={data}
renderItem={({item}) => (
<Text style={{padding: 10}}>
{item.fname} {item.lname}
</Text>
)}
keyExtractor={item => item.fname}
ItemSeparatorComponent={() => _onRenderSeparator()}
ListHeaderComponent={_onRenderHeader()}
enableEmptySections={true}
/>
</View>
);
};
export default SearchBarScreen;
Я новичок, чтобы реагировать нативно, я пытался реализовать панель поиска, которая получает список данных из массива и отображать ig с помощью flatlist. Но я хочу показывать плоский список только тогда, когда чьи начальные символы похожи на символы, которые я печатаю. Ex. Если я наберу в строке поиска «Go». Я хочу показать список элементов, начинающихся только с 'Go'