首页 > 其他分享 >Vue3 中的v-model实现父子组件数据同步通信

Vue3 中的v-model实现父子组件数据同步通信

时间:2023-08-14 17:35:26浏览次数:44  
标签:同步 Vue3 num props 组件 model modelValue

v-model在vue2中也就是双向绑定作用,但是在vue3中除了实现双向绑定外,还可以进行组件的通信父子组件的数据同步,接下来看看例子:

<template>
        <h1>{{ num }}</h1>
        <child-event v-model="num"></child-event>
</template> 

<script lang="ts" setup>
import childEvent from "./childEvent.vue"

let num = ref(1000)

以上是父组件的代码,接下来我们实现点击子组件的按钮,同步父组件的num值

<template>
    <div>
        <div>我是子组件</div>
        <button @click="handler1">点击增加100</button>
    </div>
</template>

<script setup lang="ts">
let emits = defineEmits(['update:modelValue'])
let props = defineProps(['modelValue'])
const handler1 = () => {
    emits('update:modelValue', props.modelValue + 100)
    // console.info(props)
}
</script>

以上是子组件的代码

<template>
<child-event v-model="num"></child-event>
 //上面的代码等同于下面的代码
<child-event :modelValue="num" @update:modelValue="handler1"></child-event>

</template>

v-model理论上的作用是:

第一:相当于给子组件传递props['modelValue'] = 1000的属性值

第二:相当于给子组件绑定了自定义事件update:modelValue

所以,这样就实现了父子组件的数据的同步了。

 

标签:同步,Vue3,num,props,组件,model,modelValue
From: https://www.cnblogs.com/web001/p/17629273.html

相关文章

  • [完结8章]程序员的 AI 启蒙课,ChatGPT 辅助开发 Vue3 项目
    点击下载:程序员的AI启蒙课:ChatGPT让你1人顶3人提取码:8zwd Vue是一款用于构建用户界面的JavaScript框,它基于标准的HTML、CSS和JavaScript构建,并提供了一套声明式的、组件化的编程模型,用以帮助开发者高效地开发用户界面。目前,Vue3.0正式版也发布了两年的时间,越......
  • 记录一次调查OpenEuler上部署K8s,CoreDNS组件一直 CrashLoopBackOff ,describe 时 Back
    详细过程不赘述了。百度了很多办法都不可用,然后尝试重装k8s好多次也不管用。 最后解决。kubectleditdeploymentcoredns-nkube-systemapiVersion:apps/v1kind:Deploymentmetadata:annotations:deployment.kubernetes.io/revision:"2"creationTimestamp......
  • vue3+typescript中的props
     以上是子组件 以上是父组件<scriptsetuplangs="ts">letprops=defineProps(['info','money'])//父子组件的通信需要用到defineProps方法去接受父组件想要传递的数据console.info(props)</script>需要注意的就是:props可以实现父子组件的通信,但是props的......
  • LLMOps(Large Language Model Operations)简介
    LLMOps是一个新兴领域,专注于管理大型语言模型的整个生命周期,包括数据管理、模型开发、部署和伦理等方面。HuggingFace、Humanloop和NVIDIA等公司正在引领这一领域的发展。HuggingFace的Transformers库已成为构建和微调各种NLP任务的大型语言模型的首选开源库。类似地,Humanloop......
  • 使用 transmittable-thread-local 组件解决 ThreadLocal 父子线程数据传递问题
    在某个项目中,需要使用mybatis-plus多租户功能以便数据隔离,前端将租户id传到后端,后端通过拦截器将该租户id设置到ThreadLocal以便后续使用,代码大体上如下所示:ThreadLocal<Integer>threadLocal=newInheritableThreadLocal<>();threadLocal.set(1);Java 我在Controlle......
  • vue2和vue3中插槽写法区别
    一、slot是什么在HTML中slot元素,作为WebComponents技术套件的一部分,是Web组件内的一个占位符。该占位符可以在后期使用自己的标记语言填充。(我们可以理解为solt在组件模板中占好了位置,当使用该组件标签时候,组件标签里面的内容就会自动填坑(替换组件模板中slot位置),作为承......
  • ❤ React08-React 组件的生命周期3
    ❤React08-React组件的生命周期33组件卸载时(卸载阶段)执行时间:组件从页面之中消失时componentDidMount(){}组件的挂载阶段componentWillUnmount(){}组件的卸载阶段组件的挂载阶段执行的一些方法可以在组件的卸载阶段除去组件的其他钩子函数旧版本生命周期钩子函数新版......
  • Spring Boot + Vue3前后端分离实战wiki知识库系统<十二>--用户管理&单点登录开发一
    目标:在上一次https://www.cnblogs.com/webor2006/p/17533745.html我们已经完成了文档管理的功能模块开发,接下来则开启新模块的学习---用户登录,这块还是有不少知识点值得学习的,先来看一下整体的效果,关于效果官网有一个体验地址:wiki.courseimooc.com,如下:其效果也是人人熟知的,下面......
  • esp-idf的添加自己组件的问题
    main文件夹中的CMakeLists.txt部分,即使REQUIRES什么都没添加,但在编译过程中也会自动包含SDK中components的每一个组件,也会包含自己项目中的components中的每一个组件,如下  而自己项目中components的每个组件需要用到什么外部组件都需要在REQUIRES中先进行添加 如我的l......
  • Learning Transferable Visual Models From Natural Language Supervision
    LearningTransferableVisualModelsFromNaturalLanguageSupervision作者:AlecRadford*1JongWookKim*1ChrisHallacy1AdityaRamesh1GabrielGoh1SandhiniAgarwal1GirishSastry1AmandaAskell1PamelaMishkin1JackClark1GretchenKrueger1Ily......