如果這是顯而易見的,我很抱歉,我只是不明白。我正在嘗試從 GraphQL 服務器獲取資料。我正在關注Apollo客戶端上的檔案,一切都很好。問題是我一直以承諾的形式獲取資料,而不是真實的物件
const GET_DATA = gql`
{
category {
name
products {
name
inStock
}
}
}
`;
const data = client
.query({
query: GET_DATA,
})
.then((result) => {
return result;
})
.then((res) => res.data);
ReactDOM.render(
<ApolloProvider client={client}>
<React.StrictMode>
<App data={data} />
</React.StrictMode>
</ApolloProvider>,
document.getElementById("root")
);
我嘗試鏈接另一個 .then() 方法并使用 .json() 方法轉換回應,但沒有用。也許是因為 GraphQL 回應不同?
我會使用useQuery()鉤子,但我被特別要求使用類組件
uj5u.com熱心網友回復:
該dataconst 變數將持有一個承諾,但您從 GraphQl 獲得的結果應該是正確的,在第一個 .then 塊中,您需要將結果保存在一個狀態中,然后將該狀態作為資料回傳給您的 App 組件。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/318791.html
標籤:javascript 反应 异步 图形
