首页 > 解决方案 > graphql中的动态查询名称

问题描述

我有一个通用的下拉组件,它根据要求获取 graphql 查询名称,它应该接受它并发送到操作,然后在 grapqlAPI 接收它并动态调用 api

import { gql } from '@apollo/client';

export const FETCH_REFERENCE_DATA1 = (typeName) => {
  console.log(typeName)
  return typeName;
}
export const FETCH_REFERENCE_DATA = gql`
  query findQuery($locale: Locale!) {
    ${FETCH_REFERENCE_DATA1}(locale: $locale) {
      presentation
      _desc
    }
  }
`;

我试过这样的事情,但它的抛出错误

GraphQLError: Syntax Error: Expected Name, found "=".
▶ 12 stack frames were collapsed.
parseDocument
C:/Projects/src/index.ts:96
Module.gql
C:/Projects/src/index.ts:133
Module.<anonymous>
C:/Projects/frontend-main-app/src/queries/referenceTables.ts:7
   4 |   console.log(typeName)
   5 |   return typeName;
   6 | }
>  7 | export const FETCH_REFERENCE_DATA = gql`
   8 |   query findQuery($locale: Locale!) {
   9 |     ${FETCH_REFERENCE_DATA1}(locale: $locale) {
  10 |       presentationstrong text

标签: reactjsuser-interfacegraphqlapollo-client

解决方案


推荐阅读