Vue3中的defineModel

本文介绍了Vue3中的defineModel,用于简化子组件与父组件之间的数据传递和实时更新,通过vite.config.js配置并展示了在子组件和父组件中的使用示例。
摘要由CSDN通过智能技术生成

目录

一、vue3的defineModel介绍

二、defineModel使用

(1)在vite.config.js中开启

(2)子组件

(3)父组件


一、vue3的defineModel介绍

为什么要使用到defineModel呢?这里有这样一种场景:

子组件传递给父组件数据,并且实时更改。那么我们知道大概思路就是子组件使用defineEmits和defineProps来,但是这样很复杂,代码很多重复,实时更换让我们想到了v-model,所以我们就需要用到defineModel了。具体操作如下:

子组件的输入框数据变化,父组件也同样显示。

二、defineModel使用

(1)在vite.config.js中开启

 

(2)子组件

<template>
 <div class="son">
    <h3>子组件</h3>
    <input type="text" @input="e=>countvalue=e.target.value" :value="countvalue"> 
 </div>  
</template>

<script setup>
import {defineModel} from 'vue'
const countvalue=defineModel()

</script>

<style>
.son{
    border: 1px solid red;
    width: 200px;
    height: 200px;
}
</style>

(3)父组件

 

<template>
  <div class="fa">
    <h3>父组件</h3>
     <Son v-model="count"></Son>
     count={{ count }}
  </div>
</template>

<script setup>
import Son from './Son.vue';
import {ref} from 'vue'

const count=ref(123445)
</script>

<style>
.fa{
    border: 1px solid black;
    width: 300px;
    height: 300px;
}
</style>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

稻子永不倒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值