采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
这个export emitter 应该是个单例吧,如果是的话,一个页面有多个 from 组件的话,会造成影响吧。
同学 我们的 mitt的实例 不是在每个 Form 组件中都新建了一个吗?
export const emitter = mitt()
老师,看了这个问题我也有疑惑了,我们每次使用Form组件的时候,是每次都在全局创建了一个mitt实例吗?还是说每次创建的实例只存在于各个Form组件的内部?这是怎么做到的呢?
在 App.vue 中,使用两个 ValidateForm 组件,伪代码如下 ``` <template> <div class="container"> <validate-form @form-submit="onFormSubmit"> <div class="mb-3"> <validate-input></validate-input> </div> <div class="mb-3"> <label for="form-label">邮箱地址</label> <validate-input></validate-input> </div> </validate-form > <validate-form @form-submit="onFormSubmit"> <div class="mb-3"> <label for="form-label">邮箱地址</label> <validate-input></validate-input> </div> <div class="mb-3"> <label for="form-label">邮箱地址</label> <validate-input></validate-input> </div> </validate-form > </div> </template> ``` 然后在 ValidateForm 的 setup 函数中的 callback 中 ``` const callback = (func?: ValidateFunc) => { if (func) { funcArr.push(func) console.log(funcArr.length) } } ``` 打印的结果是 1、2、3、4 而不是 1、2、1、2
登录后可查看更多问答,登录/注册
带你完成前后端分离复杂项目,率先掌握 vue3 造轮子技能
1.5k 2
1.2k 2
795 17
1.3k 17
1.8k 15