Lor*_*ren 7 apollo graphql apollo-server
假设您想createdAt从updatedAt解析器调用解析器。例如,这不起作用:
{
Review: {
createdAt: review => review._id.getTimestamp(),
updatedAt: review => review.updatedAt || this.createdAt(review)
},
}
Run Code Online (Sandbox Code Playgroud)
我意识到我可以创建一个reviewCreatedAt()从两者调用的函数,但我正在寻找一种调用createdAt解析器的方法。
没有调用另一个解析器的标准方法。this即使不使用箭头函数,使用也不起作用,因为当底层代码调用解析器时,上下文会丢失。你可以这样做:
const resolvers = {
Review: {
createdAt: review => review._id.getTimestamp(),
updatedAt: review => review.updatedAt || resolvers.Review.createdAt(review)
},
}
Run Code Online (Sandbox Code Playgroud)
但是,如果您使用数据模型,您可能会发现将此逻辑提升到数据模型中(使用计算字段或虚拟字段)会更容易。
| 归档时间: |
|
| 查看次数: |
1874 次 |
| 最近记录: |