请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

新建文章,点击创建按钮,不判断输入是否满足条件,直接跳转

老师你好,在第五章form组件中,我按照视频去编写代码但是组件的内容稍微和视频有点不同,不过我认为思路是正确的,而且可以实现了,但是这一节需要复制一个新建页面的时候,虽然页面显示正确了,但是点击创建按钮无法做判断,总是显示result为true,我不清楚哪里出现了问题,方便提供一个邮箱吗我把代码打包发给你看一下,卡在这里一晚上了没有进展

正在回答 回答被采纳积分+3

插入代码

2回答

张轩 2024-05-23 10:10:14

同学你好

原因在这里啊,你在 CreatePostForm 中新建了一个 emitter

1
2
// 40 行
export const emitter = mitt<Events>()

而在 validateInput 中引入的却是另外一个 emiiter

1
import { emitter } from './ValidataForm.vue'

这就造成了这两个不一致,所以就会出现最终的问题,其实就是任何的事件注册和发射都没有生效。

0 回复 有任何疑惑可以回复我~
  • 提问者 慕粉孔帅 #1
    老师您好,我把问题写在邮件里面发给你了,麻烦你方便的时候看一下,谢谢
    回复 有任何疑惑可以回复我~ 2024-05-24 23:25:26
  • 张轩 回复 提问者 慕粉孔帅 #2
    同学你好
    已经看了你的邮件,这里你的多个 emitter 应该出现了循环引用的问题,我将其中一个单独拿了出来就可以了,我创建了一个新的文件,在根目录 /emit.ts
    
    import mitt from 'mitt'
    export type validataFunc = () => boolean
    type Events = {
        'postForm-item-created': validataFunc
    }
    export const emitter2 = mitt<Events>()
    
    然后用 emitter2 的地方都改成从这个地方引用就可以了,你可以将另外一个 emiiter 也挪进来,这样就可以在一个文件中统一管理了。
    回复 有任何疑惑可以回复我~ 2024-05-26 10:22:06
张轩 2024-05-22 09:14:46

同学你好

我的邮箱vikingmute@163.com 记得把 node_modules 文件夹删除掉

0 回复 有任何疑惑可以回复我~
  • 提问者 慕粉孔帅 #1
    老师您好,我已经发送代码,并且在邮件里面介绍了一下,麻烦您看一下,等你的回复
    回复 有任何疑惑可以回复我~ 2024-05-22 10:26:53
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号