详解vue中父子组件传递参数props的实现方式

 更新时间:2023年07月30日 09:42:16   作者:tommoq  
这篇文章主要给大家介绍了在vue中,父子组件传递参数 props 实现方式,文章通过代码示例介绍的非常详细,对我们的学习或工作有一定的参考价值,需要的朋友可以参考下

通过 Prop 向子组件传递数据

001:父组件=====》子组件通信

<template>
    <div>
       <h1>这里是父元素</h1>
       //******
       <childComponent :detailMes="detailMes"/>
    </div>
</template>
<script>
    import childComponent from  './childComponent'
    export default {
        name:"parentComponent",
        data() {
            return {
                detailMes:'111'
            }
        },
        components: {
            childComponent,
        },
    }
</script>

子组件

<template>
  <div>
    数据需要从父元素传递过来哦:{{detailMes}}
  </div>
</template>
<script>
  export default {
    name:'childComponent',
    data() {
      return {
      }
    },
    props: {
      detailMes:{
        type : String,
      }
    },
    methods: {
      name() {
      }
    }
  }

002:子组件=====》父组件通信

(要求父组件先给子组件一个函数)
列表数据在父组件,循环的ul>li在子组件,现在在组件删除数据,需要通知父组件

<template>
    <div>
       <h1>这里是父</h1>
       //父组件先给子组件一个函数
       <childComponent :list="list" :del="del"/>
    </div>
</template>
<script>
    import childComponent from  './childComponent'
    export default {
        data() {
            return {
                list:[
                    {id:"001",stuName:'学生a'},
                    {id:"002",stuName:'学生b'},
                ]
            }
        },
        components: {
            childComponent,
        },
        methods: {
            del(id) {
                const idx=this.list.findIndex(v=>v.id==id);
                if(idx>-1){
                    this.list.splice(idx,1)
                }
                // this.list=this.list.filter(item=>item.id!==id)
            }
        },
    }
</script>
<template>
  <div>
    子组件
    <ul>
      <li v-for="item of list" :key="item.id">
        <span>{{item.stuName}}</span>
        <button @click="dele(item.id)" class="red">x</button>
      </li>
    </ul>
  </div>
</template>
<script>
  export default {
    name:'childComponent',
    data() {
      return {
      }
    },
    props: {
      // 父元素传递过来的方法
      list:{},
      // 父组件传递过来的方法
      del:{}
    },
    methods: {
      dele(ids) {
        // 通知父元素,快删除数据了
        // 去调用父组件的方法
        this.del(ids);
      }
    }
  }

003 传递 多层传递下去

<template>
    <div>
       <h1>这里是父</h1>
       <childComponent :msg="msg"/>
    </div>
</template>
<script>
    import childComponent from  './childComponent'
    export default {
        data() {
            return {
                msg:'这条数据需要通过层层传递下去'
            }
        },
        components: {
            childComponent,
        },
    }
</script>
<template>
  <div>
    子组件
    <grandsonComponent :msg="msg"></grandsonComponent>
  </div>
</template>
<script>
import grandsonComponent from '@/components/grandsonComponent.vue';
  export default {
    components: {
      grandsonComponent,
    },
    props: {
      msg:{}
    },
  }
</script>
<template>
    <div>
       这是统计的{{msg}}的数据
    </div>
</template>
<script>
    export default {
        name:'grandsonComponent',
        props: {
            msg: {}
        },
    }
</script>

到此这篇关于详解vue中父子组件传递参数props实现方式的文章就介绍到这了,更多相关vue父子组件传递props内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • vue实现图书管理demo详解

    vue实现图书管理demo详解

    这篇文章主要介绍了vue实现图书管理,分享了图书管理demo用的知识点,以及遇到问题的总结,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-10-10
  • Vue中保存数据到磁盘文件的方法

    Vue中保存数据到磁盘文件的方法

    今天小编就为大家分享一篇Vue中保存数据到磁盘文件的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-09-09
  • vue3 ref 和reactive的区别详解

    vue3 ref 和reactive的区别详解

    本文主要介绍了vue3 ref 和reactive的区别详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-03-03
  • vue实现离线地图+leaflet+高德瓦片的详细代码

    vue实现离线地图+leaflet+高德瓦片的详细代码

    这篇文章主要给大家介绍了关于vue实现离线地图+leaflet+高德瓦片的详细代码,Vue Leaflet是一种结合了Vue框架和Leaflet库的前端技术,用于展示和操作天地图,需要的朋友可以参考下
    2023-10-10
  • 详解从vue-loader源码分析CSS Scoped的实现

    详解从vue-loader源码分析CSS Scoped的实现

    这篇文章主要介绍了详解从vue-loader源码分析CSS Scoped的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • vue引用CSS样式实现手机充电效果

    vue引用CSS样式实现手机充电效果

    这篇文章主要介绍了vue引用CSS样式实现手机充电效果,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2024-01-01
  • vue获取元素宽、高、距离左边距离,右,上距离等还有XY坐标轴的方法

    vue获取元素宽、高、距离左边距离,右,上距离等还有XY坐标轴的方法

    今天小编就为大家分享一篇vue获取元素宽、高、距离左边距离,右,上距离等还有XY坐标轴的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-09-09
  • Vue项目中v-bind动态绑定src路径不成功问题及解决

    Vue项目中v-bind动态绑定src路径不成功问题及解决

    这篇文章主要介绍了Vue项目中v-bind动态绑定src路径不成功问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-04-04
  • VueJs里利用CryptoJs实现加密及解密的方法示例

    VueJs里利用CryptoJs实现加密及解密的方法示例

    这篇文章主要介绍了VueJs里利用CryptoJs实现加密及解密的方法示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-04-04
  • 详解vue中的computed的this指向问题

    详解vue中的computed的this指向问题

    这篇文章主要介绍了详解vue中的computed的this指向问题,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-12-12

最新评论