Search code examples
javascriptnext.jses6-promise

How do I pass a promise result into a variable in Next.js getStaticProps()?


I'm trying to pass the article props in Next.js using getStaticProps(). However, this code returns an error because article is an [object Promise].

 const getArticles = (uid) =>
    client
      .query(Prismic.Predicates.at('my.article.categories.category', uid), {
        orderings: '[my.article.date_written desc]',
      })
      .then((res) => res.results);
  const articles = getArticles(params.uid);

How do I set articles as res.results?


Solution

  • A quick answer would be something like this:

    const articles = await client
      .query(Prismic.Predicates.at('my.article.categories.category', params.uid), {
        orderings: '[my.article.date_written desc]',
      });
    

    If you need a more precise answer in case this is not appropriate, you can share more code.