在 Vue 中,父子组件可以通过以下方式相互调用方法:父组件调用子组件方法:通过 props、refs。子组件调用父组件方法:通过 emit、provide/inject。
Vue 中父子组件如何相互调用方法
在 Vue 中,父子组件可以通过以下方法相互调用方法:
父组件调用子组件方法
子组件调用父组件方法
立即学习“前端免费学习笔记(深入)”;
具体步骤
父组件调用子组件方法
使用 props:
<!-- 父组件 --> <template> <ChildComponent :my-method="myMethod" /> </template> <script> export default { methods: { myMethod() { console.log("父组件的方法被调用了"); }, }, }; </script> <!-- 子组件 --> <template> <button @click="myMethod">触发父组件的方法</button> </template> <script> export default { props: ['myMethod'], }; </script>
使用 refs:
<!-- 父组件 --> <template> <ChildComponent ref="child" /> </template> <script> export default { mounted() { this.$refs.child.myMethod(); // 调用子组件的方法 }, }; </script> <!-- 子组件 --> <template> <button>触发父组件的方法</button> </template> <script> export default { methods: { myMethod() { console.log("父组件的方法被调用了"); }, }, }; </script>
子组件调用父组件方法
立即学习“前端免费学习笔记(深入)”;
使用 emit:
<!-- 子组件 --> <template> <button @click="triggerEvent">触发父组件的事件</button> </template> <script> export default { methods: { triggerEvent() { this.$emit('my-event'); // 触发父组件的事件 }, }, }; </script> <!-- 父组件 --> <template> <ChildComponent @my-event="myMethod" /> </template> <script> export default { methods: { myMethod() { console.log("子组件触发了父组件的事件"); }, }, }; </script>
使用 provide/inject:
<!-- 父组件 --> <template> <ChildComponent /> </template> <script> export default { provide() { return { myMethod: () => { console.log("父组件的方法被调用了"); }, }; }, }; </script> <!-- 子组件 --> <template> <button @click="myMethod">触发父组件的方法</button> </template> <script> export default { inject: ['myMethod'], }; </script>
以上就是vue中父子组件如何相互调用方法的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号