# Nuxt Data Fetching (Vue.js / Nuxt.js) > useFetch, useAsyncData, $fetch, lazy fetching, error handling, refresh, data caching - 20 interview questions - Mid-Level - [Interview Questions: Vue.js / Nuxt.js](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions.md) ## 1. What is the main difference between useFetch and useAsyncData in Nuxt? **Answer** useFetch is a wrapper around useAsyncData and $fetch that simplifies common API calls. It automatically handles URL construction and accepts a URL directly as the first argument, while useAsyncData requires a unique key and a custom fetcher function. Use useFetch for simple API calls, useAsyncData for complex fetching logic. ## 2. Why is it recommended to always provide a unique key when using useAsyncData? **Answer** The unique key allows Nuxt to identify and deduplicate requests between server and client during SSR hydration. Without a unique key, data might be unnecessarily re-fetched on the client after server rendering, or cache conflicts could occur. The key also serves for caching and state management. ## 3. What is the difference between $fetch and useFetch in Nuxt? **Answer** $fetch is a utility function that performs simple HTTP requests without state management or reactivity, similar to native fetch but with Nuxt enhancements. useFetch is a composable that returns reactive refs (data, pending, error) and handles SSR hydration. Use $fetch for imperative calls in event handlers, useFetch for declarative fetching in components. ## 17 more questions available - How to enable lazy fetching with useFetch or useAsyncData? - How to handle errors during data fetching with useFetch? Sign up for free: https://sharpskill.dev/en/login ## Other Vue.js / Nuxt.js interview topics - [JavaScript Fundamentals](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/javascript-fundamentals.md): 20 questions, Junior - [Modern JavaScript (ES6+)](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/es6-modern-javascript.md): 20 questions, Junior - [Vue Basics](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/vue-basics.md): 22 questions, Junior - [Vue Components](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/vue-components.md): 20 questions, Junior - [Vue Router](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/vue-router.md): 18 questions, Junior - [Pinia State Management](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/pinia-state-management.md): 20 questions, Junior - [Vuex (Legacy)](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/vuex-legacy.md): 15 questions, Mid-Level - [Composition API](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/composition-api.md): 24 questions, Mid-Level - [Vue Reactivity](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/vue-reactivity.md): 20 questions, Mid-Level - [Nuxt Fundamentals](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/nuxt-fundamentals.md): 22 questions, Mid-Level - [Nuxt SSR & SSG](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/nuxt-ssr-ssg.md): 22 questions, Mid-Level - [Nuxt Server Routes](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/nuxt-server-routes.md): 20 questions, Mid-Level - [Nuxt Modules](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/nuxt-modules.md): 18 questions, Mid-Level - [Vue Composables](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/vue-composables.md): 20 questions, Mid-Level - [Vue Forms & Validation](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/vue-forms-validation.md): 20 questions, Mid-Level - [Nuxt State Management](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/nuxt-state-management.md): 18 questions, Mid-Level - [Vue Testing](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/vue-testing.md): 20 questions, Mid-Level - [Nuxt Deployment & CI/CD](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/nuxt-deployment-cicd.md): 22 questions, Mid-Level - [Vue Performance](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/vue-performance.md): 22 questions, Senior - [Vue Advanced Patterns](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/vue-advanced-patterns.md): 24 questions, Senior - [TypeScript with Vue](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/typescript-vue.md): 22 questions, Senior - [Nuxt Authentication](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/nuxt-auth.md): 20 questions, Senior - [SEO with Nuxt](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/nuxt-seo.md): 20 questions, Senior - [Nuxt Internationalization](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/nuxt-i18n.md): 18 questions, Senior - [Vue Architecture](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/vue-architecture.md): 22 questions, Senior - [Nuxt Security](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/nuxt-security.md): 20 questions, Senior - [Vue Ecosystem](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/vue-ecosystem.md): 18 questions, Senior - [Migration Vue 2→3 & Nuxt 2→3](https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/migration-vue2-vue3-nuxt2-nuxt3.md): 22 questions, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/en/technologies/vue-nuxt/interview-questions/nuxt-data-fetching