監(jiān)聽(tīng)子組件事件

2020-12-28 18:12 更新

監(jiān)聽(tīng)子組件事件和監(jiān)聽(tīng)普通事件類(lèi)似,如:

// api-index.stml:


<template>
    <view>
        <api-test onresult="onGetResult"></api-test>
    </view>
</template>
<script>
    import './components/api-test.stml'  

    
    export default {
        name: 'app-index',
        methods: {
            onGetResult(e){
                console.log(e.detail.msg);
            }
        }
    }
</script>

以上示例中監(jiān)聽(tīng)了子組件的result事件,子組件里面通過(guò)fire方法來(lái)觸發(fā)監(jiān)聽(tīng)的事件:

// app-test.stml:


<template>
    <text onclick="onclick">Hello App!</text>
</template>
<script>
    export default {
        name:'api-test',
        methods:{
            onclick(){
                let detail = {msg:'Hi'};
                this.fire('result', detail);
            }
        }
    }
</script>

fire方法有兩個(gè)參數(shù),第一個(gè)參數(shù)為事件名稱,第二個(gè)參數(shù)為要傳遞的自定義數(shù)據(jù),在父組件監(jiān)聽(tīng)方法里面通過(guò)e.detail獲取傳遞的數(shù)據(jù)。

// api-index.stml:


methods: {
  onGetResult(e){
      console.log(e.detail.msg);
  }
}
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)