v-model双向绑定组件通信

给input元素绑定原生input事件,触发input事件时,进而触发update:model-value事件

javascript 复制代码
<template>
<Child v-model="lastName" v-if="true"></Child>
<p >{{lastName}}</p>
</template>
<script>
import Child from "./components/child.vue"
data() {
    return {
      lastName: '我是父组件'
    };
  },
</script>

子组件

javascript 复制代码
<template>
    <div>
        我是child组件
        <!-- <input type="text" :value="lastName" @input="$emit('update', $event.target.value)"> -->
        <input type="text" v-model="input">
    </div>
</template>
<script>
export default {
    name: 'Child',
    props: ['lastName'],
    model:{
        prop: 'lastName',
        event: 'update'
    },
    data() {
        return {
          // value: this.lastName,
        }
    },
    computed: {
        input: {
            get() {
                return this.lastName;
            },
            set(val) {
                this.$emit('update', val);    // 触发
            }
        }
    },
    mounted() {
       
    },
    methods: {
   
    },
    
}
</script>
相关推荐
kk不中嘞10 分钟前
浅谈前端框架
前端·vue.js·react.js·前端框架
服务端技术栈23 分钟前
历时 1 个多月,我的第一个微信小程序「图片转 Excel」终于上线了!
前端·后端·微信小程序
一个很老的小萌新26 分钟前
json 解析 [{“id“:1,“name“:“apple“},{“id“:2,“name“:“banana“}]
java·前端·json
yanlele42 分钟前
前端面试第 78 期 - 2025.09.07 更新 Nginx 专题面试总结(12 道题)
前端·javascript·面试
影子信息1 小时前
el-tree 点击父节点无效,只能选中子节点
前端·javascript·vue.js
拜无忧1 小时前
完美圆角,渐变边框,兼容chrome 60,两层背景的视觉差
前端·css
徐小夕1 小时前
用Vue3写了一款协同文档编辑器,效果简直牛!
前端·javascript·vue.js
wangbing11251 小时前
界面规范8-文字
前端·javascript·html
盛夏绽放1 小时前
抽成独立组件库:微前端架构下公共组件共享的最佳实践
前端·有问必答
江拥羡橙2 小时前
【目录-单选】鸿蒙HarmonyOS开发者基础
前端·ui·华为·typescript·harmonyos