vue 组件中slot插口的具体用法

前端之家收集整理的这篇文章主要介绍了vue 组件中slot插口的具体用法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

子组件

  •   父组件

    首页

    跳转到详情

    父组件

    {{msg}}

      这种情况是如果要父组件在子组件中插入内容 ,必须要在子组件中声明slot 标签 ,如果子组件模板不包含插口,父组件的内容

    {{msg}}

    将会被丢弃。

    当slot存在默认值

    默认值

    ,且父元素在中没有要插入的内容时,会显示

    默认值

    (p标签会去掉),当slot存在默认值,且父元素在中存在要插入的内容时,则显示父组件中设置的值,

    具名slot

    元素可以用一个特殊的属性 name 来配置如何分发内容。多个 slot 可以有不同的名字。具名 slot 将匹配内容片段中有对应 slot 特性的元素

    子组件

    `,};

    var parentNode = {
    template: `
    <div class="parent">

    父组件

    `,components: { 'child': childNode },};

    仍然可以有一个匿名 slot,它是默认 slot,作为找不到匹配的内容片段的备用插槽。匿名slot只能作为没有slot属性的元素的插槽,有slot属性的元素如果没有配置slot,则会被抛弃

    子组件

    `,};

    var parentNode = {
    template: `
    <div class="parent">

    父组件

    我是其他内容

    `,};

    我是其他内容

    插入中,而

    如果没有默认的 slot,这些找不到匹配的内容片段也将被抛弃

    子组件

    `,};

    我是其他内容

    作用域插槽

    作用域插槽是一种特殊类型的插槽,用作使用一个 (能够传递数据到) 可重用模板替换已渲染元素。

    在子组件中,只需将数据传递到插槽,就像将 props 传递给组件一样

    在父级中,具有特殊属性 scope 的