Abortable Fetch and Request Cancellation
Write a client data helper that cancels stale requests. Fast typists and route changes should not apply an older response on top of a newer one. UI The interaction: [TYPEAHEAD | ROUTE CHANGE | WIZARD] Framework: [REACT] API: [URL SHAPE] DELIVER 1) A function that accepts an AbortSignal and passes it to fetch. Map abort to a typed error the UI can ignore, distinct from a real failure. 2) The React piece: create the controller in an effect, abort in the cleanup, and ignore setState after abort. Show the race: response for query "a" arriving after "ab". 3) Timeout via AbortSignal.timeout or a manual timer, and which errors the user sees (timeout versus offline versus 500). 4) What not to abort: a POST that already started a payment. Say why cancellation is a UI concern there, not a server undo. 5) A test with fake timers or a deferred promise that resolves out of order. Do not swallow all errors in an empty catch.
🌟 Example Output / Preview
Prompt Metadata
Primary Use Cases:
- •Legacy code modernization & technical refactoring
- •Full-stack layout generation & component structuring
- •CI/CD workflow automation & unit/E2E testing suites
Associated Tags:
💡 Pro Tips & Advice
1. Use bracketed items: Be sure to fill out all [PLACEHOLDER] elements with specific details before sending the prompt to the AI model.
2. Adjust temperature: For creative tasks, set AI temperature higher (e.g., 0.8), or lower (e.g., 0.2) for strict coding/technical tasks.
🔗 Related AI Prompts
Full SaaS Landing Page Build Spec (SEO + Conversion)
You are a Staff Product Designer + Frontend Engineer + SEO strategist. Build a complete, production-ready marketing landing page f...
SaaS Analytics Dashboard Full Build Spec
You are a Principal Product Designer + Frontend Lead. Design and specify a complete [LIGHT | DARK] analytics dashboard for [PRODUC...
SaaS Admin Panel Dashboard Build Spec
Design a full internal Admin Dashboard for [PRODUCT_NAME] used by [ADMIN_ROLE: support | ops | super-admin]. --- 🎯 CONTEXT Adm...