Nuxt.js 数据获取与组合式 API
在这篇教程中,你将学习如何在 Nuxt.js 中使用组合式 API 获取数据。我们会介绍 Nuxt 提供的专属数据获取函数,比如 useFetch 和 useAsyncData,并带你理解它们和 Vue 的组合式 API(Composition API)是如何协同工作的。通过实际示例,你可以掌握如何在页面加载时从远程 API 拉取数据,并在组件中高效地响应式使用这些数据。
什么是组合式 API?
组合式 API(Composition API)是 Vue 3 引入的一种新的组件编写方式。相比于传统的 Options API(data, methods, computed 等分开写),组合式 API 更加灵活,适合模块化和重用逻辑。
你可以在组件中使用 setup() 函数,通过 ref, reactive, computed 等工具函数来管理状态和逻辑。
<script setup lang="ts">
import { ref } from 'vue'
const count = ref(0)
const increment = () => count.value++
</script>
Nuxt 中的数据获取方式
在 Nuxt 3 中,获取远程数据有两个核心工具函数:
useFetch:推荐用于页面组件(Page Components),能自动处理服务端渲染、缓存等。useAsyncData:功能更通用,可用于组件中任意地方,适合更复杂的数据处理需求。