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

vue3.4中的v-model的用法~

1.首先以前我们针对父子组件传参是不是通过definePropsdefineEmits来实现的,首先父组件通过defineProps传递参数a给子组件,然后子组件处理后又通过defineEmits再重新传给父组件,父组件再接受子组件的参数,比较繁琐,因为他是单向传参,而不是双向的,这里我们要介绍的是vue3.4的v-model来实现双向数据传递。

2、代码示例:

//父组件
<template><Add ref="addForm" v-model="drawerStates.add"></Add>
</template>import Add from './add.vue'
const addForm = ref(null)
const drawerStates = reactive({add: false
})//子组件
//父组件使用 v-model="state" 时,这个 state 值会传递给 modelValue prop
const props = defineProps({modelValue: Boolean//这是 Vue 3 中 v-model 的默认 prop 名称
})
// 定义组件可以触发的事件
// 当子组件触发这个事件时,父组件的 v-model 值会更新
const emit = defineEmits(['update:modelValue'])
// 创建一个计算属性 drawerOpen,用于双向绑定
const drawerOpen = computed({//  从父组件获取当前值get() {return props.modelValue},// 通知父组件值的变化set(value) {emit('update:modelValue', value)}
})
//这样在子组件内部可以像使用普通 ref 一样使用 drawerOpen.value

3、工作流程:

  1. 当父组件 drawerStates.add 变化 → 自动更新 props.modelValue

  2. 当子组件修改 drawerOpen.value → 触发 update:modelValue → 父组件 drawerStates.add更新

4、为什么这么写?

  1. 实现真正的双向绑定,而不仅仅是单向数据流

  2. 保持组件状态与父组件同步

  3. 符合 Vue 3 的组件通信规范

  4. 使组件可以像原生表单元素一样工作

http://www.xdnf.cn/news/1083763.html

相关文章:

  • 支持向量机(SVM)在肝脏CT/MRI图像分类(肝癌检测)中的应用及实现
  • 从源码到思想:OneCode框架模块化设计如何解决前端大型应用痛点
  • Application的onLowMemory从Android API 34开始系统不再触发,从API 35开始废弃
  • 【BTC】协议(共识机制)
  • 自定义指令
  • java+vue+SpringBoo职业生涯规划系统(程序+数据库+报告+部署教程+答辩指导)
  • 【AI大模型】Spring AI 基于mysql实现对话持久存储详解
  • 多模态大语言模型arxiv论文略读(149)
  • 【网络协议安全】任务13:ACL访问控制列表
  • 深度学习图像分类数据集—蘑菇可食性识别分类
  • 使用Python将PDF转换成word、PPT
  • 量子计算机技术(第二节,到底什么是量子)
  • 【CSS-15】深入理解CSS transition-duration:掌握过渡动画的时长控制
  • 高速信号眼图
  • ASP.NET代码审计 Web Forms框架 SQL注入漏洞
  • 【Python】使用读取到的文件
  • 零成本搭建浏览器远程Linux桌面:Ubuntu/Debian方案全解析
  • MySQL数据库主从复制
  • python-if结构、三目运算符
  • 善用关系网络:开源AI大模型、AI智能名片与S2B2C商城小程序赋能下的成功新路径
  • 知识文档管理系统选型指南(中小企业专用)
  • CppCon 2018 学习:What Do We Mean When We Say Nothing At All?
  • 一文掌握Qt Quick数字图像处理项目开发(基于Qt 6.9 C++和QML,代码开源)
  • 计算机网络1.1:什么是Internet?
  • 电商系统二次开发找谁做?ZKmall开源商城前后端分离技术更易升级迭代
  • leetcode 每日一题 1865. 找出和为指定值的下标对
  • uniapp实现的多种时间线模板
  • Redis存储Cookie实现爬虫保持登录 requests | selenium
  • TCP/IP协议栈实现浅析(下) 报文接收相关函数及流程分析
  • 软件版本FCCU(故障采集与控制单元)设计