Web / TanStack Interview Questions
How do you write dependent (sequential) queries in TanStack Query with Vue?
Use the enabled option with a computed() boolean. In Vue every option that reads reactive state must be wrapped in computed(); otherwise TanStack Query captures the value once at setup and never updates.
<script setup lang="ts">
import { computed } from "vue"
import { useQuery } from "@tanstack/vue-query"
// Step 1: fetch current session
const { data:session } = useQuery({
queryKey: ["session"],
queryFn: fetchCurrentSession,
})
// Step 2: only fetch projects once session is available
const userId = computed(()=>session.value?.userId)
const { data:projects } = useQuery({
queryKey: computed(()=>["projects",{userId:userId.value}]),
queryFn: ()=>fetchProjectsByUser(userId.value!),
enabled: computed(()=>userId.value!==undefined),
})
</script>Rule: wrap queryKey and enabled in computed() whenever they read reactive state — plain values are evaluated once at setup and never react to changes.
Invest now in Acorns!!! 🚀
Join Acorns and get your $5 bonus!
Acorns is a micro-investing app that automatically invests your "spare change" from daily purchases into diversified, expert-built portfolios of ETFs. It is designed for beginners, allowing you to start investing with as little as $5. The service automates saving and investing. Disclosure: I may receive a referral bonus.
Invest now!!! Get Free equity stock (US, UK only)!
Use Robinhood app to invest in stocks. It is safe and secure. Use the Referral link to claim your free stock when you sign up!.
The Robinhood app makes it easy to trade stocks, crypto and more.
Webull! Receive free stock by signing up using the link: Webull signup.
More Related questions...
