Vue组件之--slot内容分发

以前,Vue组件总是一个个的空标签的形式出现的,那么如果说组件标签里面有内容,那么要获取这些内容要怎么办呢?

Vue提供了一个解决方案:slot内容分发,其作用就是用来获取组件中的原内容(就是组件标签内部的内容)。

用法分为两种情况:当组件内的原内容结构比较简单的时候可以使用单一slot,原内容结构比较复杂的时候使用具名slot;

单一slot:在组件模板合适的位置插入slot组件即可;

 
你好,2018!
具名slot: 给你想获取的原内容部分指定一个属性`slot = "值"`,然后在在组件的模板中的合适位置插入一个slot元素,设定`name= "值"`即可。例如:

 
哈哈
  • 111
  • 222
  • 333

作用域插槽slot:

首先要将子组件的数据传递给子组件模板中的slot插槽(v-bind绑定属性):


    
然后在父组件模板中具有特殊特性 slot-scope的