vue3 父组件怎么调用子组件方法

vue3 父组件怎么调用子组件方法? vue2,直接$refs.就好了,刚刚写3有点不明白,请问怎么调用呢

阅读 3.3k
2 个回答

在父组件中 image.png 给子组件ref
再初始化下 image.png

在子组件中 image.png 引入useContext
并且初始化const ctx = useContext();
然后导出 image.png
$是我子组件所有数据的对象

最后父组件调用 comp.value.queryVo.xxxxx(params);

子组件

<script>
export default {
    setup() {

        const toPlay = () => {
            // TODO
        }
        return {

            toPlay
        }
    },
}
</script>

父组件:

<template>
    <m-player ref="player"></m-player>
</template>
<script>
import { ref, unref } from 'vue'
import mPlayer from '@components/mPlayer.vue'

export default {
    components: {
        mPlayer,
    },
    setup() {

        const player = ref(null)
        
        const play = () => {
            // 调用子组件方法
            unref(player).toPlay()
        }


        return {
            player,
        }
    },
}
</script>
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题