【发布时间】:2021-02-21 10:57:50
【问题描述】:
在分离的逻辑文件中访问emit的正确方法(或更好的方法)是什么?
这是我目前所做的工作:
foo.js
export default (emit) => {
const foo = () => { emit('bar') };
return { foo };
}
然后在消费组件上:
import { defineComponent } from '@vue/composition-api';
import foo from './foo';
export default defineComponent({
setup(props, { emit }) {
const { foo } = foo(emit);
return { foo };
}
});
但我想知道是否有更合适的方法来做到这一点?或者在消耗品文件中调用emit 是一种不好的做法?
【问题讨论】:
-
这与问题无关,但
defineComponent现在随vue一起提供,因此您可能应该从中导入。除非你使用的是早期版本的 Vue。 -
@YomS。谢谢,但是是的,我知道。目前在 NuxtJS/Vue 2 上执行此操作,这就是我使用单独的 vue/composition-api 包的原因。
-
啊,我明白了。你想用这个实现什么?我的意思是,如果你打算做一些偶数集线器,你可能想看看 this migration guide 使用外部发射器。
-
哦,我明白了,看起来不错。我认为这将有助于解决问题以清理它...谢谢!
-
您好,您找到解决几分钟前删除的上一个问题的方法了吗?我的意思是question
标签: javascript typescript vue.js vuejs3 vue-composition-api