Я пытаюсь обновить массив фильмов, когда кто-то нажимает «Загрузить фильмы» после того, как он ввел заголовок mov ie, но использует useState и делает setFilms(films => [...films, data.results]);
(обновление массива и добавление новых фильмов в существующие пустой) не работают. Что мне делать? Вот мой код:
function HomeScreen({ navigation }) {
const [films, setFilms] = useState([]);
let searchedText = "";
let page = 0;
let totalPages = 0;
const searchInputChanged = text => {
searchedText = text
}
const loadFilms = () => {
if(searchedText.length > 0)
{
getFilmsFromApiWithSearchedText(searchedText, page+1).then(data => {
page = data.page
totalPages = data.total_pages
setFilms(films => [...films, data.results]);
console.log(films)
})
}
}
return (
<View>
<Text>Home</Text>
<TextInput placeholder='Film title' onChangeText={(text) => searchInputChanged(text)} />
<Button title="Load films" onPress={() => loadFilms()} />
</View>
);
}