ApolloQueryResult 是可变的吗?
Is ApolloQueryResult mutable?
ApolloQueryResult
输入 apollo-client
定义为
type ApolloQueryResult<T> = {
data: T;
errors?: ReadonlyArray<GraphQLError>;
loading: boolean;
networkStatus: NetworkStatus;
stale: boolean;
};
和query
方法带有以下签名
query<T,TVariables>(options: QueryOptions<TVariables>): Promise<ApolloQueryResult<T>>;
因此我们得到一个 Promise
里面有 ApolloQueryResult
。
所以要么 ApolloQueryResult
是可变的,要么 loading
和 stale
属性没有意义(总是错误的)。
这是怎么回事?
ApolloQueryResult 是不可变的。通常,如果您使用 query
方法,则不会查看 loading
或 stale
属性。这些属性之所以存在,是因为正在从 Observable 查询中重用该类型。
ApolloQueryResult
输入 apollo-client
定义为
type ApolloQueryResult<T> = {
data: T;
errors?: ReadonlyArray<GraphQLError>;
loading: boolean;
networkStatus: NetworkStatus;
stale: boolean;
};
和query
方法带有以下签名
query<T,TVariables>(options: QueryOptions<TVariables>): Promise<ApolloQueryResult<T>>;
因此我们得到一个 Promise
里面有 ApolloQueryResult
。
所以要么 ApolloQueryResult
是可变的,要么 loading
和 stale
属性没有意义(总是错误的)。
这是怎么回事?
ApolloQueryResult 是不可变的。通常,如果您使用 query
方法,则不会查看 loading
或 stale
属性。这些属性之所以存在,是因为正在从 Observable 查询中重用该类型。