vue3插槽变化
1.默认插槽还是跟以前一样
2.使用具名插槽时,子组件不变
以前的父组件掉用的时候
<template slot="example">
</template>
现在为
<template v-slot:example>
</template>
或者
<template #example>
</template>
3.作用域插槽
①父组件写法 v-slot=“{子组件插槽定义的值}”,多个值写法v-slot=“{ data,index }”,同时这里也可以简写
#default=“{ data,index }” 这样就可以了
<template>
<div class="home_main">
<Dialog>
<template #header>
<div>
我是头部的内容
</div>
</template> <template v-slot="{ data,index }">
<div>
{{ data.name }}--{{ data.age }}--{{index}}
</div>
</template>
<template #footer>
<div>
我是底部内容
</div>
</template>
</Dialog>
</div>
</template> <script lang="ts" setup>
import Dialog from "../../components/slotDialog/index.vue" </script> <style lang="scss">
.home_main {
width: 100%;
height: 100vh;
background: green;
font-size: 30px;
}
</style>
②子组件写法可以传多个值
<template>
<div class="dialog_main">
<header class="header">
<slot name="header"></slot>
</header>
<main class="main">
<div v-for="(item, index) in dataList" :key="index">
<slot :data="item" :index="index"></slot>
</div> </main>
<footer class="footer">
<slot name="footer"></slot>
</footer>
</div>
</template> <script lang='ts' setup>
import { reactive } from "vue";
type names = {
name: string,
age: number
}
const dataList = reactive<names[]>([{
name: '小林',
age: 26
},
{
name: '小王',
age: 27
}, {
name: '小李',
age: 28
}, {
name: '小石',
age: 29
}, {
name: '小林',
age: 26
}])
</script> <style scoped lang="scss">
.dialog_main {
.header {
height: 20vh;
background: red;
width: 100%;
} .main {
height: 50vh;
width: 100%;
background: yellow;
} .footer {
height: 30vh;
width: 100%;
background: blue;
}
}
</style>
vue3插槽变化的更多相关文章
- 一文看完vue3的变化之处
在通读了vue的官网文档后,我记录下了如下这些相对于2.x的变化之处. 1.创建应用实例的变化 之前一般是这样: let app = new Vue({ // ...一些选项 template: '' ...
- 【转】linux设备驱动之MMC SD卡——核心层简单分析
原文网址:http://blog.chinaunix.net/uid-28685940-id-3889878.html /*************************************** ...
- vue3中$attrs的变化与inheritAttrs的使用
在vue3中的$attrs的变化 $listeners已被删除合并到$attrs中. $attrs现在包括class和style属性. 也就是说在vue3中$listeners不存在了.vue2中$l ...
- vue3渲染函数(h函数)的变化
vue3 渲染函数(h函数)的更改 h函数的更改总结 1==>h 现在全局导入,而不是作为参数传递给渲染函数 2==>渲染函数参数更改为在有状态组件和函数组件之间更加一致 3==>v ...
- 插槽在父组件和子组件间的使用(vue3.0推荐)
子组件: 父组件: 插槽在父组件和子组件间的使用(vue3.0推荐):在外面加一个template模板
- vue3.0的变化
初涉vue3.0,下面是我在demo中遇到的一些问题(我是用的vue-cli进行开发) [1]main.js中配置 第一个变化 vue2.x === Vue.prototype.$baseURL= ...
- Vue3.x 关于组件的那些变化(新手必看篇)
一.组件内的 data 为什么总是函数形式? 我们试着先做一个计数器案例,把 data 的返回形式修改成一个对象.具体的代码如下: <template> <div> <b ...
- vue3 学习笔记 (二)——axios 的使用有变化吗?
本篇文章主要目的就是想告诉我身边,正在学 vue3 或者 准备学 vue3 的同学,vue3中网络请求axios该如何使用,防止接触了一点点 vue3 的同学会有个疑问?生命周期.router .vu ...
- VUE3 之 插槽的使用 - 这个系列的教程通俗易懂,适合新手
1. 概述 非理性定律告诉我们: 人们总是习惯于以情感去判断眼前的事物,非理性的去做决定. 对于长远的利益,人们更愿意去选择短期的利益. 因此在做决定前要让自己冷静,理性的分析,让自己看的更远. 言归 ...
- VUE3 之 作用域插槽 - 这个系列的教程通俗易懂,适合新手
1. 概述 破窗效应告诉我们: 当一个建筑物窗户的玻璃完好无损时,很少有人想去破坏它,当有一个人破坏了一块窗户的玻璃,其他窗户的玻璃也很快会被人破坏. 同理,一个很干净的地方,人们不好意思去丢垃圾,但 ...
随机推荐
- obj对象数据归类整理
两个字段根据id对应整理 <!doctype html> <html lang="en"> <head> <meta charse ...
- Vue3 ref 模板引用获取不到节点
ref模板引用必须要在组件实例挂载完成之后才可以访问.如果你是在组合式 API 里面写的组件,那么 setup 函数比任何周期函数都早,所以不可能在该函数中执行时获取得到ref--组件实例. 官网关于 ...
- day09-MyBatis缓存
MyBatis缓存 mybatis – MyBatis 3 | cache MyBatis 一级缓存全详解(一) MyBatis 内置了一个强大的事务性查询缓存机制,它可以非常方便地配置和定制. 为了 ...
- 第五周作业-N67044-张铭扬
1. 搭建chrony服务完成多个主机的时间同步. [root@centos8 ~]# yum -y install chrony [root@centos8 ~]# vim /etc/chrony ...
- 解决Hbuliderx的代码不能自动补全的问题
1.先关掉HBuilder X编辑器 2.找到安装目录下的reset.bat 3.点击reset.bat,提示"确认清除HBuilder X的所有配置吗? 按任意键回车继续,或输入N回车退出 ...
- [PHP]流程控制的替代语法:endif/endwhile/endfor使用介绍
我们经常在wordpress一类博客程序的模板里面看到很多奇怪的PHP语法,比如: 代码如下: <?php if(empty($GET_['a'])): ?> <font color ...
- Dependency Analyzer
Dependency Analyzer idea插件 查找maven依赖 1.Setting---->Plugins------>Dependency Analyzer 2.使用 po ...
- hexo-theme-tree
Hexo 主题 Tree 一个简洁的主题,主要功能是 "树状导航" + "树状目录",可选配"评论"和"阅读量"功能,支 ...
- myJRebel 已不可用
周末在家里撸代码,突然 IDEA 提示 JRebel 需要激活. 原来一直使用的 myJRebel 的激活码,天真的以为是我的网络问题,尝试重新激活,结果不管用,就想去 myJrebel 的网站上去看 ...
- u盘重装系统后怎么恢复成普通u盘使用,U盘启动盘还原的方法
1.先将u盘插入到电脑,然后在电脑上按下win+r快捷键打开运行菜单,输入"cmd"回车确定打开命令提示符页面. 2. 然后在命令提示符输入"diskpart&quo ...