如何在 URQL 中通过 PK 检索

How to retrieve by PK in URQL

我有一个 URQL GraphQL 查询,它根据主键字段 (id) 检索单个元组。我在指定查询所需的语法方面遇到问题。我正在使用 graphql-codegen 生成的“useQuery”挂钩。

GetOneOrgUnit.query.gql

query GetOneOrgUnit($id: uuid!) {
  OrgUnit_by_pk(id: $id) {
    id
    name
    parent_orgunit
  }
}

我的 Vue 3 代码是:

<script setup lang="ts2>
import { useGetOneOrgUnitQuery } from '@/generated/graphql'

  const props = defineProps({
    id: {
      type: String,
      required: true
    }
  })

  const variables = {
    id: props.id
  }

  const result = useGetOneOrgUnitQuery(variables)

Typescript 抱怨在最后一个语句中传递了 'variables' 参数。收到的消息是:

const variables: {
    id: string;
}
Type '{ id: string; }' has no properties in common with type 'Omit<UseQueryArgs<never, Exact<{ id: string; }>>, "query">'.ts(2559)

我需要在这里做什么?

提前致谢。

嗯 - 简单 我只需要在 {}

中包含 'variables' 对象

所以

const result = useGetOneOrgUnitQuery(variables)

变成了

const result = useGetOneOrgUnitQuery({variables})