2025年vue中插槽的使用场景(vue中插槽的用法)

vue中插槽的使用场景(vue中插槽的用法)我们知道在 Vue 中 Child 组件的标签 的中间是不可以包着什么的 可是往往在很多时候我们在使用组件的时候总想在组件间外面自定义一些标签 vue 新增了一种插槽机制 叫做作用域插槽 要求的版本是 2 1 0 插槽 其实就相当于占位符 它在组件中给你的 HTML 模板占了一个位置 让你来传入一些东西 插槽又分为 匿名插槽 具名插槽 作用域插槽 在 2 6 0 中

大家好,我是讯享网,很高兴认识大家。



我们知道在Vue中 Child 组件的标签 的中间是不可以包着什么的 。


讯享网

可是往往在很多时候我们在使用组件的时候总想在组件间外面自定义一些标签,vue新增了一种插槽机制,叫做作用域插槽。要求的版本是2.1.0+;

插槽,其实就相当于占位符。它在组件中给你的HTML模板占了一个位置,让你来传入一些东西。插槽又分为 匿名插槽具名插槽、作用域插槽

在 2.6.0 中,我们为具名插槽和作用域插槽引入了一个新的统一的语法 (即 指令)。它取代了

匿名插槽,我们也可以叫它单个插槽或者默认插槽。和具名插槽相对,它是不需要设置 name 属性的,它隐藏的name属性为default。

father.vue

  

child.vue

匿名插槽,name的属性对应的是  default 也可以不写就是默认的意思啦;

在使用的时候还有一个问题要注意的 如果是有2个以上的匿名插槽是会child标签里面的内容全部都替换到每个slot;

顾名思义就是slot 是带有name的 ,定义:  <slot name="header" /> 或者使用简单缩写的定义 # 使用:要用一个 template标签包裹

father.vue

child.vue

这里说一下多个具名插槽的使用 多个具名插槽,插槽的位置不是使用插槽的位置而定的,是在定义的时候的位置来替换的

father.vue

child.vue

就是用来传递数据的插槽

&nbsp;

当你想在一个插槽中使用数据时,要注意一个问题作用域的问题,Vue 官方文档中说了父级模板里的所有内容都是在父级作用域中编译的;子模板里的所有内容都是在子作用域中编译的;

为了让 子组件中的数据 在父级的插槽 内容中可用我们可以将 数据 作为 元素的一个特性绑定上去:&nbsp;&nbsp;v-bind:text=“text”&nbsp;

&nbsp;

注意:

&nbsp;匿名的作用域插槽和具名的作用域插槽&nbsp;区别在v-slot:defult=“接受的名称”(defult(匿名的可以不写,具名的相反要写的是对应的name))&nbsp;
&nbsp;v-solt可以解构接收&nbsp;解构接收的字段要和传的字段一样才可以&nbsp;例如&nbsp;:one&nbsp;对应&nbsp;&nbsp;v-slot=“{one}”

&nbsp;

&nbsp;

&nbsp;效果图

&nbsp;

小讯
上一篇 2025-05-31 18:28
下一篇 2025-05-27 23:15

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/185137.html