Как в composition api vue 3 использовать emit?

Добрый день, коллеги, подскажите пожалуйста, как мне решить слудующую проблему.
Хочу использовать emit внутри файла (что товрое mixins в vue2) только в composition api vue 3
//LiveHooks.js
import {onMounted,onUnmounted,defineEmits} from "vue";
export default  () =>{

      const emit =   defineEmits(['mounted','unMounted'])
        onMounted(()=>{
            emit('mounted')
        })
        onUnmounted(()=>{
            emit('unMounted')
        })
}

имортирую этот модуль в компонент
//component.vue
<template>
//...
</template>
<script setup>
import useLiveHooks from "./LiveHooks.js";
useLiveHooks()
//...
</script>


я надеюсь что при монтировании дочернего компонента сработает метод emit('mounted') - но в консоли получаю ошибку
TypeError: emit is not a function - что я делаю не так?
  • Вопрос задан
  • 612 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы