我可以将React Context API包装在getInitialProps / getServerSideProps / getStaticProps中吗

时间:2020-07-01 19:55:03

标签: reactjs next.js

如何在NextJs的getInitialProps / getServerSideProps / getStaticProps中使用React Context API调用动作创建者?

将Redux与NextJs结合使用,我可以访问store,然后调度动作创建者。但是,使用React Context API,我不知道该怎么做。

Redux示例:

Search.getInitialProps = async ({ store }) => {
   store.dispatch(fetch('next-js'));
});

如何使用React Context API做到这一点?

谢谢!

1 个答案:

答案 0 :(得分:0)

在Context提供程序中,您可以执行以下操作

export async function getStaticProps() {
        // Call an external API endpoint to get posts.
        // You can use any data fetching library
        const res = await fetch("https://www.mocky.io/")
        const search = await res.json()

        // By returning { props: search }, the Search component
        // will receive `search` as a prop at build time
        return {
            props: {
                search,
            },
        }
    }