Java:graphql-calculator(服务端)
graphql-github-io-zh-Hans生态项目与库
Java:graphql-calculator(服务端)
GraphQL Calculator 是一个轻量级的 GraphQL 计算引擎,用于改变 GraphQL 查询的执行行为。
使用示例
以下是一些在 GraphQL 查询中使用 GraphQL Calculator 的示例:
1. 基础映射值(@map)
graphql
query basicMapValue($userIds:[Int]){
userInfoList(userIds:$userIds)
{
id
age
firstName
lastName
fullName: stringHolder @map(mapper: "firstName + lastName")
}
}
2. 按年龄过滤用户(@filter)
graphql
query filterUserByAge($userId:[Int]){
userInfoList(userIds: $userId)
@filter(predicate: "age>=18")
{
userId
age
firstName
lastName
}
}
3. 将获取的值转换并映射为另一字段的参数(@fetchSource + @argumentTransform)
graphql
query parseFetchedValueToAnotherFieldArgumentMap($itemIds:[Int]){
itemList(itemIds: $itemIds){
# 将 sellerId 以唯一名称 "sellerIdList" 保存为 List<Long>
sellerId @fetchSource(name: "sellerIdList")
name
saleAmount
salePrice
}
userInfoList(userIds: 1)
# 根据表达式 "sellerIdList" 和表达式参数转换 "userInfoList" 中名为 "userIds" 的参数,
# 即用名为 "sellerIdList" 的 source 替换 userIds 的值
@argumentTransform(argumentName: "userIds",
operateType: MAP,
expression: "sellerIdList",
dependencySources: ["sellerIdList"]
){
userId
name
age
}
}
更多信息
更多信息请参阅 graphql-calculator README。
帮助我们改进文档
发现翻译问题或内容错误?请告诉我们。
