在 Vue-apollo 中使用 gql-tag 构造查询字符串
Posted
技术标签:
【中文标题】在 Vue-apollo 中使用 gql-tag 构造查询字符串【英文标题】:Constructing query string with gql-tag in Vue-apollo 【发布时间】:2021-04-19 14:39:05 【问题描述】:我相信可以使用 JS 动态构造 GraphQL 查询字符串,但我无法弄清楚语法。 我的 Vue 组件中有一个查询,如下所示:
apollo:
metricsOee:
query: METRICS_OEE,
loadingKey: 'loading',
variables()
return
widgetType: this.data.name,
page: 'dashboard',
currentMetricDay: this.currentTime
我不想每次都从我的组件中传递 currentTime,而是在查询本身中计算它。我的尝试是这样的:
[![在此处输入图片描述][1]][1]
我理解gql``和JS插值不一样,但这是为了说明问题 [1]:https://i.stack.imgur.com/qwgpw.png
【问题讨论】:
不需要使用插值...只需使用下一个变量作为其他 2 个变量?只需定义$currentMetricDay
并输入第一个查询行
【参考方案1】:
您可能需要用双引号将 $currentMetricDay
括起来:
...
metricsOee: getMetricsOee(
currentMetricDay: "$currentMetricDay"
widgetType: $widgetType
page: $page
)
...
【讨论】:
哇,这很简单。非常感谢!以上是关于在 Vue-apollo 中使用 gql-tag 构造查询字符串的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Vuepress 站点中使用 vue-apollo?
如何将 GraphQLObjectType 与 graphql-tag 和 gql-tag 创建的模式结合起来?
当我在 Vue-apollo 中使用本地状态时如何获取远程 GraphQL 数据
在 NUXT 中使用 vue-apollo 从 Vuex 商店访问 this.$apollo?