Установите библиотеку Searchable Flatlist внутри пустой папки, используя npm install --save searchable-flatlist
Откройте папку node_module, созданную в указанной выше папке, скопируйте папку searchable-flatlist и вставьте ее в папку node_module вашего проекта
Затем следуйте этому фрагменту кода:
import SearchableFlatlist from "searchable-flatlist";
import {Button, Input, Container, Header, Content, Card, CardItem, Body, Item, Icon} from 'native-base';
export default class App extends Component {
state = { searchTerm: "", data:"empty" };
render() {
if(this.state.data== "empty"){
return (
<View ><ActivityIndicator size="large" color="#0000ff" /> </View>
);
}
else{
return (
<View style={sContainer}>
<Card style={{backgroundColor: "#dddddda1"}}>
<Header searchBar rounded>
<Item>
<Icon name="ios-search" />
<Input placeholder="Search"
onChangeText={searchTerm => this.setState({ searchTerm })}
/>
<Icon name="ios-people" />
</Item>
<Button transparent>
<Text>Search</Text>
</Button>
</Header>
<SearchableFlatlist
searchProperty={"email"}
searchTerm={this.state.searchTerm}
data={this.state.customersBox}
containerStyle={{ flex: 1 }}
renderItem={({ item }) =>
<ListItem
roundAvatar
title={`${item.name.first} ${item.name.last}`}
subtitle={item.email}
avatar={{ uri: item.picture.thumbnail }}
+ containerStyle={{ borderBottomWidth: 0 }}
/>
}
// item.name.first specifies the value to filter with
keyExtractor={item => item.name.first}
ItemSeparatorComponent={Separator}
/>
</Card>
</View>
);
}
}
};
Возможно, вам придется немного изменить код.