7x6 精读Vue官方文档 - 内置组件

307 阅读1分钟

精读 Vue 官方文档系列 🎉


component

相当于一个组件的占位符。根据 is Attribute 来动态渲染匹配到的组件。

transition

<transition> 组件可以为单个元素/组件应用过渡效果,它只会把过渡效果应用到其包裹内容上,而不会产生额外渲染的 DOM 元素。

transition-group

基于 FLIP 的简单动画队列来实现列表(多个元素,多个组件)的过渡。不同于 <transition> 组件,<transition-group> 会产生额外的包裹 DOM,默认是 span,可以通过 tag Attribute 进行自定义。

注意,每个 <transition-group> 的子节点必须有独立的 key,动画才能正常工作

keep-alive

<keep-alive> 组件可以保留组件状态或避免重新渲染。

使用 <keep-alive> 需要注意的是:

  • <keep-alive> 只能用在其一个直属的子组件被开关的情形,既同一时刻,只能有一个子元素被渲染。如果你在其中有 v-for 则不会工作。
  • 函数式组件由于没有实例,所以无法被缓存。

<keep-alive> 只能开关显示 keep-alive 树内的元素,如果你在 <keep-alive> 组件内部放入了多个元素,同时一刻只能显示一个,其它的会默认被 keep-alive 隐藏。

<keep-alive> 组件在切换缓存的组件时,会触发组件内的 activateddeactivated 生命周期函数。

slot

定义一个插槽,用来接收和分发组件父作用域中传输的内容。 通过 name 可以定义具名插槽。 通过 v-slot:name="" 可以定义作用域插槽 scopedSlots

template

通常我们会用 <template> 组件来包裹我们的模板元素,从而对模板内容进行分组。

需要注意的是 <template> 不能作为根元素 (root element) 使用。