Reactjs nextjs获取url参数并传递到getStaticPaths()函数中

Reactjs nextjs获取url参数并传递到getStaticPaths()函数中,reactjs,next.js,Reactjs,Next.js,我有一个路由/[catSlug]/[slug],我正在尝试从url获取catSlug参数,然后将其传递到getStaticPaths()函数中 我收到错误错误:在/[catSlug]/[slug] 我可以从路由器.queryhook获得这个,但是我不知道如何将它传递给getStaticPaths()函数 [catSlug]/[Slug].js import { GraphQLClient } from 'graphql-request'; import React from 'react' im

我有一个路由
/[catSlug]/[slug]
,我正在尝试从url获取catSlug参数,然后将其传递到getStaticPaths()函数中

我收到错误
错误:在/[catSlug]/[slug]

我可以从路由器.queryhook获得这个,但是我不知道如何将它传递给getStaticPaths()函数

[catSlug]/[Slug].js

import { GraphQLClient } from 'graphql-request';
import React from 'react'
import { useRouter } from 'next/router'

const graphcms = new GraphQLClient(
  'api'
);

export async function getStaticProps({ params }) {
  const { product } = await graphcms.request(
    `
    query ProductPageQuery($slug: String!) {
      product(where: { slug: $slug }) {
        name
        price
      }
    }
  `,
    {
      slug: params.slug,
      // catSlug: params.catSlug
    }
  );

  return {
    props: {
      product
    }
  };
}

export async function getStaticPaths() {

  const { products } = await graphcms.request(`
    {
      products {
        slug
        name
        cat
      }
    }
  `);

  return {
    paths: products.map(({ slug ,catSlug }) => ({
      params: { slug, cat: catSlug }
    })),
    fallback: false
  };
}

export default ({ product }) => {
  const router = useRouter()
  const { catSlug } = router.query
  return(
    <React.Fragment>
      <h1>{product.name}</h1>
      <p>{product.slug}</p>
    </React.Fragment>
  )
}
从“graphql请求”导入{GraphQLClient};
从“React”导入React
从“下一个/路由器”导入{useRouter}
const graphcms=新的GraphQLClient(
“api”
);
导出异步函数getStaticProps({params}){
const{product}=wait graphcms.request(
`
查询ProductPageQuery($slug:String!){
产品(其中:{slug:$slug}){
名称
价格
}
}
`,
{
slug:params.slug,
//catSlug:params.catSlug
}
);
返回{
道具:{
产品
}
};
}
导出异步函数getStaticPaths(){
const{products}=wait graphcms.request(`
{
产品{
鼻涕虫
名称
猫
}
}
`);
返回{
路径:products.map({slug,catSlug})=>({
参数:{slug,cat:catSlug}
})),
后退:错误
};
}
导出默认值({product})=>{
const router=useRouter()
const{catSlug}=router.query
返回(
{product.name}
{product.slug}

) }