Component Patterns
Basic Query Usage
import { useGetParcelByCoordsQuery } from '@/features/land/land.client';
function ParcelCard({ x, y }: { x: number; y: number }) {
const { data, isLoading, isError, error } = useGetParcelByCoordsQuery({ x, y });
if (isLoading) return <div>Loading...</div>;
if (isError) return <div>Error: {error.toString()}</div>;
if (!data) return null;
return (
<div>
<h2>{data.name || `Parcel ${x},${y}`}</h2>
<p>Owner: {data.owner}</p>
</div>
);
}Optimizing Re-renders with selectFromResult
selectFromResultConditional Queries with skip
skipPolling for Real-time Updates
Lazy Queries
Mutation Usage
Basic Mutation
Mutation with Feedback
Using Slice State
Combining Multiple Queries
Derived State with Selectors
Dispatching Actions
Entity Adapter Selectors
Prefetching Data
Manual Cache Management
Handling Query States
Form Integration
Best Practices
1. Use Typed Hooks
2. Handle All Query States
3. Use .unwrap() for Mutations
.unwrap() for Mutations4. Narrow Results with selectFromResult
selectFromResult5. Avoid Selecting Entire Slices
Next Steps
Last updated