Вы должны использовать React Hook, а затем вызвать функцию внутри него. Затем вы можете сохранить ответ в состоянии
Попробуйте что-то вроде этого:
import fetch from "isomorphic-unfetch";
import React, {useEffect} from "react"
const IndexPage = props => {
console.log(props.data);
if(!props.data){
return <div>Waiting for data...</div>
}
return <div>main page</div>;
};
export async function getServerSideProps() {
const { API_URL } = process.env;
console.log("inside fetch");
const res = await fetch(`${API_URL}/movies`);
const data = await res.json();
return { props: { data } };
}
export default IndexPage;
В противном случае вы можете использовать getStaticProps
Тогда вы уверены, что данные есть, когда компонент извлекает ..