分享一下大三前端实习生进入公司实习的第二天。
实习第二天主要的工作还是熟悉之前的代码以及在自己的电脑上跑起来。之前两位学姐的代码之中也存在一些小问题,今天也解决了其中的一些。
主要遇到的问题是在用户登录模块中, 其中对密码的判断是包裹在Promise之中,页面的路由跳转一开始则写在Promise逻辑之后。导致用户输入正确密码后第一次点击进入按钮后依旧会显示密码错误,需要第二次点击才可以正常进入。
错误产生的原因是Promise传递到.then()里面的函数被置于微任务队列之中,而不是立刻执行。意味着要到JS事件队列执行完毕,且队列清空之后才会开始执行。所以在一开始的逻辑中,判断密码正确的布尔值在.then()中被设置为真,而路由跳转读取该布尔值在.then()之外,所以第一次点击进入时无法读取到.then()中修改的布尔值,导致出现错误。
解决的办法是将路由跳转逻辑放入.then()中的布尔值赋值之后。
由于后端明天就要走了,所以原本的后端以及云端服务器的运维任务交给了测试刘哥,我也决定自己学习一下项目后端用的golang,毕竟在这里实习还是学习一些东西更加重要。