文章目录
- 实现方法1
- 实现方法2
实现方法1
子组件调用父组件方法实现参数更新
父组件
<template><child-component :num="num" @updateNum="updateNum"></child-component>
</template><script>
import childComponent from './component/child'
export default {components: { childComponent },data() {return {num: 2}},methods: {updateNum(num) {this.num = num}
}
</script>
子组件
<template><div><p>父组件传过来的值:{{ num }}</p><button @click="changeNum">加一</button></div>
</template><script>
export default {name: 'child',props: {num: {type:Number,default: 0}},methods:{changeNum() {this.$emit("updateNum", this.num + 1)}}
}
</script>
实现方法2
通过
.sync
修饰符以及$emit
配合update:
实现
父组件
<template><child-component :num.sync="num"></child-component>
</template><script>import childComponent from './component/child'export default {components: { childComponent },data() {return {num: 2}}}
</script>
子组件
<template><div><p>父组件传过来的值:{{ num }}</p><button @click="changeNum">加一</button></div>
</template><script>export default {name: 'child',props: {num: {type: Number,default: 0}},methods:{changeNum() {this.$emit("update:num", this.num + 1)}}}
</script>