子组件向父组件传值核心的部分是emit事件,子组件绑定一个emit触发事件,父组件监听事件就可以达到子组件向父组件传值的目的。
这里我们编写一个计数器的案例。
首先我们先展示子组件和父组件的代码:
<template>
<div>
<button @click="increment">+1</button>
<button @click="decrement">-1</button>
<input type="text" v-model.number="num">
<button @click="incrementN">+n</button>
</div>
</template>
<script>
export default {
emits:["add","sub","addN"],
data() {
return {
num:0,
}
},
methods: {
increment(){
console.log("+1");
this.$emit("add");
},
decrement(){
console.log("-1");
this.$emit("sub");
},
incrementN(){
this.$emit("addN",t