美文网首页
(十八)补充-Vue3中插槽的使用

(十八)补充-Vue3中插槽的使用

作者: Mr_莫言之 | 来源:发表于2021-01-23 22:38 被阅读0次
本章我们将了解到的是vue3中常用插槽的使用;

vue3中的插槽是在用的时候和vue2的区别略有不同,常见插槽使用中主要体现在具名插槽上。
1、vue3中新增了v-slot来代替vue2中的slot等属性。
2、在普通插槽中使用:

// page-layout 组件模板
el-container
  el-main
    slot
  
// 匿名插槽(默认插槽)使用
page-layout
  el-table(:data="tableData" height="100%")
    el-table-column(prop="date" label="日期" width="180")
    el-table-column(prop="name" label="姓名" width="180")
    el-table-column(prop="address" label="地址")

结果会将el-table的内容渲染到组件模板中的el-main中。它还有另一种写法:

// 匿名插槽(默认插槽)使用
page-layout
  template(v-slot)
    el-table(:data="tableData" height="100%")
      el-table-column(prop="date" label="日期" width="180")
      el-table-column(prop="name" label="姓名" width="180")
      el-table-column(prop="address" label="地址")

此种写法就是vue3中新增的插槽指令,它还有另一种写法:

// 匿名插槽(默认插槽)使用
page-layout
  template(#) // Vue3中的新写法
    el-table(:data="tableData" height="100%")
      el-table-column(prop="date" label="日期" width="180")
      el-table-column(prop="name" label="姓名" width="180")
      el-table-column(prop="address" label="地址")

此种写法类似于v-on简写于@,v-bind简写于:,v-slot也有简写:#。
3、在具名插槽中使用,
可以通过给v-slot指令增减一个参数名称来指定具体的某一个插槽(具有name属性的插槽)

el-container.h100.layout-page
  el-header.flex
    slot(name="top-left")
    slot(name="top-right")
  el-main
    slot
  el-footer.flex
    slot(name="bottom")

在此组件中就包含了已给匿名插槽以及,name分别为"top-left","top-right","bottom"的三个具名插槽。

page-layout.page-layout-box
  template(#top-left)
    div
      el-button(type="primary") 测试按钮1
      el-button(type="primary") 测试按钮2
  template(#top-right)
    div
      el-button(type="primary") 测试按钮3
      el-button(type="primary") 测试按钮4
  template(#)
    el-table(:data="tableData" height="100%")
      el-table-column(prop="date" label="日期" width="180")
      el-table-column(prop="name" label="姓名" width="180")
      el-table-column(prop="address" label="地址")
  template(#bottom)
    el-button(type="primary") 测试按钮5

那么我们在使用的时候直接使用插槽的简写来对指定的插槽指定要渲染的内容。

下一章:(十九)setup 语法糖应用
上一章:(十七)Vue3.x使用provide/inject来代替vuex的实现方式

ps:未经他人事,勿劝他人善!

相关文章

  • (十八)补充-Vue3中插槽的使用

    本章我们将了解到的是vue3中常用插槽的使用; vue3中的插槽是在用的时候和vue2的区别略有不同,常见插槽使用...

  • 18、Vue3 作用域插槽

    作用域插槽:让插槽内容能够访问子组件中,vue2中作用域插槽使用slot-scope,vue3中使用v-slot ...

  • vue3-slot-消息框-模态框

    1.前言 1.使用vue3 的slot插槽时,大部分和vue2-slot插槽[https://www.jiansh...

  • Vue 插槽

    1.插槽的简单使用 在组件中声明一个插槽 使用组件时 可以替换插槽 如果不替换插槽就使用默认值 2.具名...

  • vue3中的插槽

    插槽 默认插槽 具名插槽,v-slot可以简写为# 动态插槽 #[dynamicSlotName] 作用域插槽(...

  • Vue插槽的使用方法

    About 使用插槽是为了能够在页面中显示向组件中传入的新的HTML 一、具名插槽 效果图: 2. 具名插槽的使用...

  • vue 插槽 slot

    插槽使用 普通插槽 具名插槽 使用具名插槽 从插槽里面传值出来如何接收? 如: 如何判断某个插槽是否被使用 组件内...

  • 四。插槽,Attribute 继承

    插槽 在Vue3中,用template标签包裹要填充的内容,v-slot属性也需定义在template标签上,只有...

  • 详解vue中的插槽

    1.在vue中插槽分为具名插槽和非具名插槽;而插槽的使用主要是我们在页面中存在很多个相似但却重复的部分; 首先我以...

  • vue 插槽的使用

    vue 插槽手册 深入理解vue中的slot与slot-scope 插槽的使用其实是很简单首先要明白插槽是使用在子...

网友评论

      本文标题:(十八)补充-Vue3中插槽的使用

      本文链接:https://www.haomeiwen.com/subject/wmkpzktx.html