返回

小白快速入门 Vue.js 3 中的常用 API

前端

前言

Vue.js 3 引入了组合式 API,这是一组强大的新工具,可让您以更加灵活和高效的方式构建组件。这些 API 旨在使组件更易于维护、测试和复用。

对于 Vue.js 初学者来说,了解和掌握这些组合式 API 至关重要。在本文中,我们将深入探讨 Vue.js 3 中最常用的组合式 API,并提供实用示例,帮助您快速入门。

1.响应式数据:ref()reactive()

ref() 创建一个响应式的 JavaScript 对象,当其内部属性更改时,Vue.js 将自动重新渲染受影响的组件。这类似于 Vue.js 2 中的 data 选项。

const count = ref(0);

reactive() 创建一个响应式的 JavaScript 对象,其所有属性都是响应式的。

const person = reactive({
  name: "John",
  age: 30,
});

2.生命周期钩子:onMounted()onUnmounted()

onMounted() 在组件挂载后立即执行,而 onUnmounted() 在组件卸载之前执行。这取代了 Vue.js 2 中的 mounted()destroyed() 生命周期钩子。

onMounted(() => {
  // 组件挂载后执行代码
});

onUnmounted(() => {
  // 组件卸载前执行代码
});

3.状态管理:useState()useStore()

useState() 创建并管理组件内的局部状态。它返回一个元组,其中包含状态值和一个用于设置状态的函数。

const [count, setCount] = useState(0);

useStore() 连接组件到外部状态存储(例如 Vuex)。它返回一个用于获取和更新存储状态的方法。

const store = useStore();
store.getters.user.name;

4.依赖跟踪:computed()watch()

computed() 创建一个计算属性,该属性依赖于其他响应式数据。当依赖项更改时,计算属性将自动更新。这类似于 Vue.js 2 中的计算属性。

const fullName = computed(() => {
  return `${person.firstName} ${person.lastName}`;
});

watch() 监视一个响应式数据,并在其更改时执行回调。这与 Vue.js 2 中的 watch 选项类似。

watch(person.age, (newValue, oldValue) => {
  // 当 person.age 更改时执行代码
});

5.网络请求:useFetch()useAsyncData()

useFetch() 执行一个网络请求并返回一个响应对象。它类似于 axios 或 fetch API。

const response = await useFetch("/api/users");

useAsyncData() 也是用于网络请求的,但它返回一个带有状态(加载、成功、错误)和数据的对象。

const { data, error } = useAsyncData(() => fetch("/api/users"));

6.表单处理:useForm()

useForm() 提供了一个简单的 API 用于创建和验证表单。它管理表单状态、错误和提交处理。

const { formData, errors, submitForm } = useForm();

7.路由:useRoute()useRouter()

useRoute() 返回当前激活的路由对象。它提供了访问路由参数、名称和路径等信息。

const route = useRoute();
route.params.id;

useRouter() 返回路由器实例。它允许您编程方式导航和管理路由。

const router = useRouter();
router.push("/home");

8.其他有用的 API

  • nextTick(): 在下一个 Vue 渲染循环中执行回调。
  • isRef(): 检查一个值是否是一个 ref。
  • toRaw(): 返回一个响应式对象的原始非响应式副本。
  • shallowRef(): 创建一个浅响应式 ref。
  • watchEffect(): 当响应式数据更改时执行回调,类似于 watch() 但不依赖于特定的响应式数据。

结论

这些组合式 API 是 Vue.js 3 中最重要的工具之一。它们使组件更易于维护、测试和复用。对于 Vue.js 初学者来说,掌握这些 API 至关重要。通过练习和理解,您可以快速掌握它们,并编写出强大的 Vue.js 应用程序。