属性 'me' 类型“{}”不存在.ts(2339)

Property 'me' does not exist on type '{}'.ts(2339)

所以我在 props.me.id 上遇到了上述错误。我该如何解决?

components/OrderList.tsx

const USER_ORDERS_QUERY = gql`
  query USER_ORDERS_QUERY($userId: String) {
    orders(where: { user: { equals: $userId } }, orderBy: { createdAt: desc }) {
      id
      total
      createdAt
      items {
        id
        title
        price
        description
        mainDescription
        quantity
        image
      }
      user
    }
  }
`;

const userOrdersQuery = graphql(
  USER_ORDERS_QUERY,
  {
    options: props => ({
      variables: {
        userId: props.me.id,
      },
      fetchPolicy: 'cache-and-network',
      pollInterval: 300
    })
  }
);

const OrderList = props => {
  const { me, user_ip, user_Agent, url, urlReferer, client, data: { orders, loading: loadingQuery, error: errorQuery, startPolling, stopPolling, subscribeToMore }} = props;

}

const ItemWithApollo = withApollo(OrderList)
export default memo(userOrdersQuery(ItemWithApollo));

我的部分回购可以在这里找到:https://github.com/TheoMer/next_apollo

您还没有为 props 指定类型。

在许多情况下,TypeScript 无法自动推断参数的类型,您通常需要手动指定它们(如果可能)或使用 props: any(如果不能 - 但如果可以,请避免这样做!)。

在这种情况下,您可以只指定 props.me.id 属性,如下所示:

options: (props: { me: { id: string } }) => ({
  // ...