如何触发变异,反应+ Apollo 2.1

时间:2018-08-05 19:14:56

标签: reactjs apollo react-apollo

我有一个突变,当单击按钮并返回结果时会触发该突变。现在,我希望在收到该结果时触发另一个变异,并在下一个变异中使用该结果。

所以基本上..

  1. 点击,致电突变。
  2. 产生突变。
  3. 收集结果。
  4. 根据收集的结果,使用该结果触发另一个突变。

这方面的任何例子都将大有帮助。

这是我到目前为止所拥有的

<configuration>
  <timestamp key="byDay" datePattern="yyyyMMdd'T'HHmmss"/>

  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <filter class="ch.qos.logback.classic.filter.LevelFilter">
      <level>INFO</level>
      <onMatch>ACCEPT</onMatch>
      <onMismatch>DENY</onMismatch>
    </filter>
    <encoder>
      <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
    </encoder>
  </appender>

  <appender name="FILE" class="ch.qos.logback.core.FileAppender">
    <file> log-${byDay}.txt </file>
    <append>true</append>
    <encoder>
      <pattern>%-4relative [%thread] %-5level %logger{35} - %msg%n</pattern>
    </encoder>
  </appender>

  <root level="debug">
    <appender-ref ref="FILE" />
    <appender-ref ref="STDOUT" />
  </root>

</configuration>

1 个答案:

答案 0 :(得分:1)

您可以串联或组合它们,签出this library

实际上,组成它们,您可以执行以下操作:

const handleClick = async (mutation1Fn, mutation2Fn) => {
  const data1 = await mutation1Fn()
  const data2 = await mutation2Fn()
}

const Mutations = () => (
  <Composer
    components={[
      <Mutation mutation={mutation1} />,
      <Mutation mutation={mutation2} />
    ]}
  >
    {([mutation1Fn, mutation2Fn]) => (
      <button
        onClick={() => handleClick(mutation1Fn, mutation2Fn)}
      >
        exec!
      </button>
    )}
  </Composer>
)

让我知道您是否正在努力工作!