在graphql查询或突变上异步/等待

时间:2018-07-03 00:24:07

标签: node.js async-await graphql

我用 graphql-yoga 制作了API服务器。 (一个nodejs库)

在搜索Google之前,我只使用这样的查询/变异。

[第一种情况]

Query: {
    movies: () => { return Movies.all();}
}

但是在搜索之后,我发现一些在查询/变异上使用await / async的代码。

[第二种情况]

Query: {
    movies: async () => { return await Movies.all(); }
}

据我所知,第二种情况更安全,更好。

但是我是graphql和es6的新手。

graphql中是否已定义与进程相关的异步/等待?

或者,不必考虑吗?

还是使用async / await更好?

任何建议将不胜感激:)

谢谢。

1 个答案:

答案 0 :(得分:3)

async/await是与GraphQL不相关的ES6范例

  • 这是语法糖,应该使基于Promises的代码“更容易阅读”。
  • 它没有提供更好的性能和开销。

您应该继续兑现诺言,直到您对诺言足够了解以至于需要进行async/await迁移为止。