el-input 标签如何使用 $emit
时间: 2023-06-25 18:05:40 浏览: 153
Vue: 多个el-select不能重复选择相同属性
在 Vue 中,可以使用 `$emit` 方法来触发自定义事件。要在 `el-input` 组件中使用 `$emit`,可以通过以下步骤完成:
1. 在 `el-input` 标签中添加 `@input` 属性,该属性用于监听输入框的输入事件,并将其绑定到一个方法上,例如:
```html
<el-input v-model="inputValue" @input="handleInput"></el-input>
```
2. 在 Vue 实例中定义 `handleInput` 方法,并使用 `$emit` 触发一个自定义事件,例如:
```js
methods: {
handleInput() {
this.$emit('my-event', this.inputValue)
}
}
```
在上面的代码中,`handleInput` 方法触发了一个名为 `my-event` 的自定义事件,并将输入框的值作为参数传递给该事件的监听器。
3. 在父组件中监听自定义事件,并在事件处理函数中获取传递的参数,例如:
```html
<template>
<div>
<el-input v-model="inputValue" @my-event="handleMyEvent"></el-input>
<p>输入框的值为:{{ inputValue }}</p>
</div>
</template>
<script>
export default {
data() {
return {
inputValue: ''
}
},
methods: {
handleMyEvent(value) {
console.log('接收到自定义事件,并获取到的值为:', value)
this.inputValue = value
}
}
}
</script>
```
在上面的代码中,父组件监听了名为 `my-event` 的自定义事件,并在事件处理函数 `handleMyEvent` 中获取到输入框的值,并将其赋值给 `inputValue` 变量。这样,父组件就可以获取到子组件中输入框的值了。
阅读全文