我正在使用掛鉤從 firebase 獲取用戶:
const [user, isUserLoading, isUserError] = useDocument(
doc(getFirestore(app), 'users', currentUserId)
);
我對user物件中的陣列感興趣:
const currentUserSurveys = user && user?.data().surveys;
現在我想將currentUserSurveys一個字串陣列作為引數傳遞給這個鉤子:
const clientSurveys = useClientSurveys(currentUserSurveys);
鉤子定義如下:
function useClientSurveys(surveysIds) {
const { isAdmin } = useAdminStatus();
const clientSurveysQueries = useQueries({
queries: surveysIds?.map(surveyId => {
return {
queryKey: ['clientSurvey', surveyId],
queryFn: () => getSurvey(surveyId),
enabled: !!surveysIds && surveysIds.length > 0 && !isAdmin,
};
}),
});
return clientSurveysQueries;
}
我收到此錯誤:
Cannot read properties of undefined (reading 'map')
我認為這一行有助于僅在surveysIds定義時呼叫查詢:
enabled: !!surveysIds && surveysIds.length > 0 && !isAdmin,
我該如何解決這個問題?
uj5u.com熱心網友回復:
做
(surveysIds || [])?.map(surveyId =>
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/530696.html
標籤:反应反应查询
上一篇:如何使用條件邏輯定義主鏈接
