uni.$emit详细用法
时间: 2023-06-03 11:06:40 浏览: 129
uni.$emit()是Vue中的一个自定义事件触发器,用于子组件向父组件传递数据或事件。具体用法为:在子组件中使用$emit方法触发自定义事件,父组件中使用$on方法监听该事件,并在回调函数中处理传递过来的数据。例如,在父组件中监听子组件触发的"myEvent"事件:
```
<template>
<child-component @myEvent="handleMyEvent"></child-component>
</template>
<script>
import ChildComponent from '@/components/ChildComponent.vue'
export default {
components: {
ChildComponent
},
methods: {
handleMyEvent(data) {
console.log('Received data from child component: ', data)
}
}
}
</script>
```
在子组件中触发事件并传递数据:
```
<template>
<div>
<button @click="handleButtonClick">Click me</button>
</div>
</template>
<script>
export default {
methods: {
handleButtonClick() {
this.$emit('myEvent', {
id: 1,
name: 'John'
})
}
}
}
</script>
```
这样,当子组件被点击时,就会触发"myEvent"事件,父组件会打印出传递过来的数据{id: 1, name: 'John'}。
阅读全文