【发布时间】:2026-01-04 19:25:01
【问题描述】:
假设我在我的本地状态中有一个对象,并且对该对象有两种类型的查询:-
anObject {
__typename: "AnObject"
thisThing: ""
thatThing: ""
}
查询 1
{
anObject @client
}
查询 2
{
anObject @client {
thisThing
}
}
2 个场景:-
一个组件正在运行查询 1,但它的渲染函数中没有使用 anObject.thatThing。
一个组件正在运行查询 2(它不查询那个东西)。
现在,假设另一个组件发生了变异 anObject.thatThing。我会假设场景 1 会导致组件重新渲染,因为它订阅了本地状态下的整个对象(通过查询 1),而在场景 2 中,如果 anObject.thatThing 发生突变,则组件不会重新渲染,因为它只是订阅了该对象的单个(不同)片段。对吗?
【问题讨论】:
标签: reactjs apollo react-apollo apollo-client