FIELD_DEFINITION directive return nil obj
- 主要语言
- Go
- 星标
- 10.8k
- 派生
- 1.3k
- 平均合并
- 2 天 36 分钟
- 30 天内合并 PR
- 26
描述
### What happened?
- FIELD_DEFINITION directive return nil obj
### What did you expect?
- return arguments
```graphql
directive @hello(reason: String = "No longer supported") on FIELD_DEFINITION
extend type Query {
test(hello: String!, world: String!): String! @hello
}
```
```go
config := gqlgen.Config{
Resolvers: &Resolver{service},
}
config.Directives.Hello = func(ctx context.Context, obj interface{}, next graphql.Resolver, reason *string) (res interface{}, err error) {
fmt.Printf("Obj %+v\n", obj)
return next(ctx)
}
```
output: nil
### versions
- `go run github.com/99designs/gqlgen version`: v0.17.36
- `go version`: v1.20.6
贡献指南
调研方向
该 issue 涉及接收 nil obj 的 FIELD_DEFINITION 指令。查看 gqlgen 代码库中的指令实现,可能位于 internal/exec 或 internal/directives。检查 obj 是如何传递给 FIELD_DEFINITION 指令的。运行提供的示例以复现该问题。确保 obj 按预期包含父对象或参数,从而验证修复。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- go, graphql
- 领域
- api, backend
- Issue 类型
- 缺陷
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 活跃度
- 停滞
- 描述清晰度
- 描述清楚
- 新手友好度
- 55/100