Apollo GraphQL:一个组件中的多个查询?

时间:2016-10-29 23:01:33

标签: graphql apollo apollo-server

我有一个需要查询两个完全独立的表的组件。在这种情况下,架构,查询和解析器需要看起来像什么?我用Google搜索但尚未找到示例。提前感谢任何信息。

更新 在Slack上,我发现可能有一种方法可以将compose用于此目的,例如:

export default compose(
  graphql(query1, 
  ....),
  graphql(query2, 
  ....),
  graphql(query3, 
  ....),
  withApollo
)(PrintListEditPage)

有没有办法让这样的多个声明:

const withMutations = graphql(updateName, {
  props({ mutate }) {
    return {
      updatePrintListName({ printListId, name }) {
        return mutate({
          variables: { printListId, name },
        });
      },
    };
  },
});

...在致电export default compose之前来了?

1 个答案:

答案 0 :(得分:19)

graphql函数使用可选的第二个参数,该参数允许您为传递的属性名称添加别名。如果您有多个突变,可以使用name属性根据需要重命名mutate

import { graphql, compose } from 'react-apollo'

export default compose(
  graphql(mutation1, { name: 'createSomething' }),
  graphql(mutation2, { name: 'deleteSomething' }),
)(Component)

有关详细信息,请参阅the complete API