从 VUE 3 setup() 侦听器发出值

Emitting value from VUE 3 setup() listener

我有一个 setup() 生命周期方法的监听器

setup() {
    const showLogout = ref(false)
    hello.on('auth.login', function(auth) {
               this.$emit("auth", auth);
            })
    return { showLogout, hello }
  }

如何才能在父组件中获取此发出事件。当我将发出代码放入普通方法时它可以工作,但是当它在此处的侦听器中时它不起作用。

我可以把这个监听器放到其他什么地方吗?

setup(props,context) {
    const showLogout = ref(false)
    hello.on('auth.login', function(auth) {
               context.emit("auth", auth);
            })
    return { showLogout, hello }
  }

setup(props,{emit}) {
    const showLogout = ref(false)
    hello.on('auth.login', function(auth) {
             emit("auth", auth);
            })
    return { showLogout, hello }
  }

你需要这样使用 emit

<component @authFunction='auth'/>