useQuery何时触发重新渲染?

时间:2020-03-07 07:41:41

标签: react-apollo

客户端状态:

type State {
  a: Int!
  b: Int!
}
extend type Query {
  state: State!
}

反应成分A:

query {
  state @client {
    a
  }
}

以下代码是否会触发组件A的重新渲染?

client.writeData({
  data: {
    state: {
      ...prevState,
      b: prevState.b + 1,
     },
  },
})

1 个答案:

答案 0 :(得分:0)

使用writeData手动更新缓存将更改useQuery返回的结果对象中的数据。但是,React在重新渲染方面很聪明,并且仅当您的查询中的值实际在JSX中使用时才重新渲染。希望这会有所帮助。