【问题标题】:Mutation process in Apollo阿波罗的突变过程
【发布时间】:2019-02-20 21:57:47
【问题描述】:

这是我目前的代码:

<Mutation mutation={addUserQuery}>
{

(addUser, data)=>{
console.log(data)
return (

  <div className="form">
  <form onSubmit={(e)=>{

  e.preventDefault();
  console.log(e);
  addUser({variables: {username: "AuraDivitiae", 
                          firstname: "Michael", 
                          lastname: "Lee"}})

  }}>

  <button type="submit">Add User</button>
  </form>         
  </div>

)
}

}
</Mutation>

当突变组件挂载时,Apollo 会做什么?
我觉得我不太了解 Apollo 内部运行的进程。
Apollo 是否订阅突变查询的结果?
然后它会在返回时更新缓存吗?
那么Data是否存储在某些组件状态中?

我觉得文档有时没有提供足够的信息...

【问题讨论】:

    标签: apollo react-apollo


    【解决方案1】:

    &lt;Mutation/&gt; 组件是...normal react component - 它有自己的状态、生命周期、使用 apollo 客户端(及其缓存)、保存数据。

    在渲染中我们的重新渲染不是由组件的setState 引起的,这可能有点令人困惑。

    如果&lt;Mutation/&gt; 是一个组件,那么事实上你的内部内容是由&lt;Mutation/&gt;render 函数呈现的,而不是在我们的组件中(它只呈现&lt;Mutation/&gt; 组件)。这是组件树结构(具有自己的生命周期)中的附加深度级别

    【讨论】:

      猜你喜欢
      • 2019-04-02
      • 2017-03-23
      • 2021-01-24
      • 2019-04-16
      • 2018-12-19
      • 2017-09-04
      • 2019-02-08
      • 1970-01-01
      • 2019-12-06
      相关资源
      最近更新 更多