Vue 插槽

Posted wepedblogs

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vue 插槽相关的知识,希望对你有一定的参考价值。

组件的插槽:

  • 为了使我们封装的组件更加具有扩展性
  • 可以使使用者决定组件内部的内容要展现什么
<!-- 渲染时就会将<slot></slot>替换为自己想显示的内容 -->
    <cpn><button>按钮</button></cpn>
    <cpn><span>腻害</span></cpn>
    <cpn></cpn>
    <cpn></cpn>
  </div>
  <template id="cpn">
    <div>
      <p>道阻且长,行则将至!!!</p>
      <slot><button>点一下</button></slot>
    </div>
  </template>

具名插槽:其实就是给插槽起名字

有多个插槽时,若想只是替换其中部分,则可以给插槽起名字

 <div id="app">
    <!-- 渲染时就会将<slot></slot>替换为自己想显示的内容 -->
    <cpn><span slot="first">点一下</span></cpn>
  </div>

  <template id="cpn">
    <div>
      <p>道阻且长,行则将至!!!</p>
      <slot name="first"><span>按钮</span></slot>
    </div>
  </template>

编译作用域: 父级模板里的所有内容都是在父级作用域中编译的;子模板里的所有内容都是在子作用域中编译的。

作用域插槽:父组件替换插槽的内容,但是内容由子组件来提供,就是父组件对子组件展示的数据展示不满意,想以另一种方式展示的时候,就从子组件中拿到数据,然后再做展示。

 

以上是关于Vue 插槽的主要内容,如果未能解决你的问题,请参考以下文章

vue插槽

Vue插槽实现原理

Vue.js 插槽 - 如何在计算属性中检索插槽内容

在Vue中获取插槽数据作为变量?

vue----slot插槽

Vue--插槽slot