GraphQL:使用字符串比较创建指令

Posted

技术标签:

【中文标题】GraphQL:使用字符串比较创建指令【英文标题】:GraphQL: creating directives with string comparison 【发布时间】:2018-08-10 01:46:54 【问题描述】:

我希望创建一个 GraphQL 查询,它可以根据变量“类型”(一个字符串)选择性地添加/删除字段:

query ResultsPage($casetype: String!)

根据Directives 上的引用,您可以对@include@skip 某些字段使用布尔值:

query Hero($episode: Episode, $withFriends: Boolean!) hero(episode: $episode) name friends @include(if: $withFriends) name

我怎样才能对这个字符串值做类似的事情?即,如果$casetype = "foo",则仅包含friends 字段。 GraphQL 可以做到这一点吗?

谢谢!

【问题讨论】:

【参考方案1】:

不幸的是,没有办法使用字符串比较。唯一可行的方法是编写可以自行处理的自定义指令。

请查看已关闭的问题here

【讨论】:

以上是关于GraphQL:使用字符串比较创建指令的主要内容,如果未能解决你的问题,请参考以下文章

文本文件中的 Perl 字符串比较

Lighthouse GraphQL 将 ID 转换为字符串而不是整数?

比较 GraphQL Hasura 中的两个字段

比较条件跳转指令

一个时钟周期内的 C++ 字符串比较

Solidity顺序编程