Vue.js 中美元符号的奥秘就是可以让我们直接访问这些子组件或元素 $route 和 $router 是啥

Vue.js 中美元符号的奥秘

1. 什么是 $refs?

$refs 是一个对象,里面包含了所有通过特性注册的子组件或 DOM 元素。简单来说,就是可以让我们直接访问这些子组件或元素,不用通过事件或状态管理间接操作。

用法:

  1. 首先在父组件中给子组件添加一个引用名,比如 `v-ref:child`。
  2. 然后在父组件中通过 `this.$refs.child` 访问子组件。

2. $emit 是什么鬼?

$emit 是用来触发自定义事件的。父组件可以监听这些事件,实现与子组件之间的通信。

用法:

  1. 在子组件中,使用 `this.$emit('自定义事件名', 参数)` 来触发事件。
  2. 在父组件中,通过 `` 来监听事件。

3. $nextTick 的作用是啥?

$nextTick 是在 DOM 更新循环结束后执行延迟回调的。在某些情况下,我们需要在 DOM 更新后进行操作,比如操作更新后的 DOM 结构,这时候 $nextTick 就派上用场了。

用法:

  1. 使用 `this.$nextTick(callback)` 来执行回调。

4. $route 和 $router 是啥?

$route 和 $router 是用于访问 Vue Router 实例和当前路由信息的。在单页应用中,路由管理非常重要,这两个属性简化了路由信息的访问和路由跳转操作。

用法:

`this.$route` 用于获取当前路由信息,`this.$router` 用于进行路由跳转等操作。

5. $store 有啥用?

$store 用于访问 Vuex Store 实例,进行状态管理。在大型应用中,状态管理非常重要,Vuex 通过 $store 简化了状态的获取和操作。

用法:

`this.$store.state` 用于获取状态,`this.$store.commit('mutationName')` 用于提交 mutation,`this.$store.dispatch('actionName')` 用于分发 action。

6. $watch 有何作用?

$watch 用于观测 Vue 实例上的数据变化。当数据变化时,$watch 会自动执行相应的回调函数。

用法:

  1. 使用 `this.$watch('数据属性', callback)` 来监听数据变化。

7. $destroy 是干嘛的?

$destroy 用于销毁 Vue 实例,进行清理工作。在某些情况下,需要手动销毁 Vue 实例以释放资源,$destroy 提供了一个便捷的方法来实现这种需求。

用法:

  1. 在组件销毁前,调用 `this.$destroy()` 方法。

在 Vue.js 中,美元符号前缀的属性和方法提供了丰富的内置功能,大大简化了开发过程。合理使用这些内置功能,可以提高代码的可读性和维护性。