vue前端开发自学,组件事件配合v-model实现的动态传递数据!

下面的案例代码是结合之前学的一些知识点,实现了简单的,父子组件之间动态传递数据的demo

下面看看代码内容和执行效果。

<template>
    <h3>Main</h3>
    <p >您正在搜索的内容:<span class="search">{{ search }}</span></p>
    <Search @searchEvent="getSearch"/>
    
</template>
<script>
import Search from "./Search.vue"
    export default{
        data(){
            return {
                search:""
            }
        },
        components:{
            Search
        },
        methods:{
            getSearch(data){
                this.search = data
            }
        }
    }
</script>
<style scoped>
.search{
    font-size: 24px;
    color:red;
}
</style>

以上是父组件的代码内容,里面调用了一个子组件的标签。已经被引入了,并且声明好了。可以当做一个标签来使用的。


<template>
    <p>搜索:<input type="text"  v-model="search"/></p>
</template>
<script>
    export default{
        data(){
            return{
                search:""
            }
        },
        watch:{
            search(newValue,oldValue){
                this.$emit("searchEvent",newValue)
            }
        }
    }
</script>

子组件代码,很简单,就是定义个输入框,让模拟用户的搜索业务。当用户输入内容时,可以实时的传递数据信息给父组件!


vue前端开发自学,组件事件配合v-model实现的动态传递数据-LMLPHP

如图,可以正常实现,父子组件之间动态传递数据的情况。

01-12 13:10