Как с помощью useEffect сделать запрос по нажатию на кнопку и чтобы при повторном нажатии не делался один и тот же запрос пока не изменили состояние в инпут? Вставлял в зависимость состояние input, но всё равно сразу несколько запросов делается.
useEffect(() => {
let query = () => {
return (
{
method: 'POST',
headers: {"Content-Type": "application/json"},
body: JSON.stringify({
query: `query getLaunches($launch_year: String) {
launchesPast(limit: 10, find: {launch_year: $launch_year}) {
mission_name
launch_date_local
launch_site {
site_name_long
}
links {
flickr_images
}
rocket {
rocket_name
}
id
}
}`, variables: {
launch_year: props.inputText
}
}),
}
)
}
fetch('https://api.spacex.land/graphql/', query())
.then(res => res.json())
.then(data => console.log(data.data.launchesPast))
setIsSending(props.inputText)
}, [props.inputText])