vue中的$emit和 .sync修飾符(update:xxx)


子組件可以使用 $emit 觸發父組件的自定義事件。
子組件:


<template>
  <div class="train-city">
    <button @click='select()'></button>
</template>
<script>
  export default {
    props:['sendData'], // 用來接收父組件傳給子組件的數據
    methods:{
      select(val) {
        this.$emit('change',1);//select事件觸發后,自動觸發父組件change事件
      }
    }
  }
</script>

父組件:

<template>
    <div>
        <div>父組件的toCity{{toCity}}</div>
        <aa @change="update" :sendData="name"></aa>
    </div>
<template>
<script>
  import aa from "./aa.vue";
  export default {
    data () {
      return {
        name:"北京"
      }
    },
    methods:{
      update(data){//觸發子組件
        this.name = data.name;//改變了父組件的值
      }
    }
  }
</script>

.sync修飾符
通過與$emit聯合使用,子組件可以修改父組件中用.sync修飾的值
父組件:

<comp :myMessage.sync="bar"></comp>

子組件:

this.$emit('update:myMessage',valc);


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM