当前位置: 首页 > news >正文

vue父子组件传值(v-model)

父组件使用v-model传值给子组件

<template><!-- 按钮 -->
<el-button @click="addMenu('new')">打开弹框</el-button><!-- 自定义组件,下面这两种写法都可以👇 -->
<MediaDialog :name="name" v-model:visible="dialogMediaVisible" /></template><script lang="ts">
import { defineComponent, ref } from 'vue'export default defineComponent({name: 'MediaCenter',setup() {const dialogMediaVisible: Ref = ref(false)const name = '🚌🚌🚌🚌🚌🚌🚌🚌🚌父组件传递的name🚌🚌🚌🚌🚌🚌🚌🚌🚌'const addMenu = function(status) {dialogMediaVisible.value = true}return {name,dialogMediaVisible,}}
})
</script>

子组件

子组件使用 props 接收父组件传来的值

<template><div><!--⚠️注意这里有个大坑,一定要用 model-value,不能用v-model --><el-dialogclass="mediaDialog"title="我是一个弹框":model-value="visible":before-close="handleClose"><span>{{ name }}</span><template #footer><span class="dialog-footer"><el-button @click="handleClose">取 消</el-button><el-button type="primary" @click="handleClose">确 定</el-button></span></template></el-dialog></div>
</template><script lang="ts">
import { defineComponent, ref, provide } from 'vue'export default defineComponent({name: 'mediaDialog',props: {name: String,visible: Boolean},setup(props, context) {// 使用 context.emit('update:visible', false),改变父组件visible的值const handleClose = function() {context.emit('update:visible', false)}return { handleClose }}
})
</script>

注意

1)这里有个大坑,<el-dialog> 中一定要用 model-value 来代替 v-model,不能用v-model,否则会报错
(2)子组件中修改父组件传入的参数 visible 时,使用 👇方式

context.emit('update:参数名', 改变的值)
http://www.lryc.cn/news/137013.html

相关文章:

  • Java接口详解
  • Windows共享文件夹,用户密码访问
  • Mac更新node
  • 2023国赛数学建模思路 - 案例:粒子群算法
  • Wireshark数据抓包分析之ARP协议
  • 6个比较火的AI绘画生成工具
  • 静力水准仪说明介绍
  • HAProxy 高级功能与配置
  • cuda编程002—流
  • 2023年国赛 高教社杯数学建模思路 - 案例:粒子群算法
  • 【C#学习笔记】数据类中常用委托及接口——以List<T>为例
  • idea的断点调试
  • vue和react学哪一个比较有助于以后发展?
  • 【SkyWalking】分布式服务追踪与调用链系统
  • Python“牵手”速卖通商品详情API接口运用场景及功能介绍
  • java调用python脚本的示例
  • 【C语言】柔性数组(可边长数组)
  • C++信息学奥赛1131:基因相关性
  • 如何保证分布式系统中服务的高可用性:应对 ZooKeeper Leader 节点故障的注册处理策略
  • SQL注入之延时注入
  • 运维高级学习--Docker(二)
  • QT的核心——信号与槽
  • 【业务功能篇73】web系统架构演变-单体-集群-垂直化-服务化-微服务化
  • MyCAT命令行监控
  • 【python】正则表达式匹配数据
  • 【C++】用Windows API在控制台实现选择选项
  • Golang 批量执行/并发执行
  • 使用go语言、Python脚本搭建一个简单的chatgpt服务网站。
  • 基于java会议室预约系统设计与实现
  • Ubuntu18.04 交叉编译curl-7.61.0