vue 传值总结(结合项目)

结合之前总结的 https://www.cnblogs.com/maizilili/p/12402125.html

一、父子通讯

方法一:props—+ emit + .sync (该方法主要针对传递的数据,带有.sync修饰符,可反向操作数据)

父组件
<template>
      <div>
           <!-- 子组件-->
           <Child :tableData.sync="tableData"></Child>   //sync的意义在于实现双向数据绑定
      </div>
</template>
<script>
import Child from './Child '  //引入Child 子组件
export default {
  data() {
    return {
      tableData: ''
    }
  },
  components: {
    Child 
  }  
}
</script>
子组件
<template>
      <div>
           <p>我是子组件</p>
            <button @click="fn"></button>
      </div>
</template>
<script>
export default {
  data() {
    return {
    }
  },
  props: {
    tableData:{
      type:Object,
      default:() => {}
    },
  },
  methods: {
      fn(){
             
            //tableData改变后,这种写法可以更新父组件里边的tableData,最新值为newTableData
            this.$emit('update:tableData', newTableData)
      }
    
  }
}
</script>

#### 方法二:props + emit + 自定义事件(以前有总结,子组件传递自定义事件和参数给父组件,父组件进行监听,来改变数值)


原文地址:https://www.cnblogs.com/maizilili/p/13255920.html