簡體   English   中英

React-Apollo-GraphQL 通用查詢和突變

[英]React-Apollo-GraphQL Generic Queries and Mutations

這個問題更多的是關於設計 在我的繁重應用程序中,想要實現通用突變查詢操作。 我的第一個想法是實現一個 function 將所有查詢或突變封裝在一個地方。 像這樣:

function query(props) {
  const Query = require('dynamic/query/based/on/props.path.gql');
  const { data, loading, ...} = useQuery(Query, ...);
  return { data, loading, ... };
}

然后使用它

import Query form './query';
function SomeMainFunction(props) {
  cont { data, loading, ...} = Query(props);
  return data.map(...);
}

(與突變類似)在我看來,即使使用React.memo也會導致不必要的重新渲染。 第二種方法是利用useContext 但在這種情況下,我真的不知道如何處理網絡狀態。 意味着先loading true然后再加載false 還是useQuery會在數據到達后通過重新渲染組件來處理這個問題?

當然,第三種解決方案是直接在函數/組件中實現這個邏輯。 由於代碼拆分,我不想要的東西。

我最終使用了上述設計並正確使用了memo ,它解決了我的問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM