egg相关问题
问题描述:
有种被egg折磨的感觉,出些莫名其妙的问题。
才开始接口路径用/api/users/loginByPhoneNumber,访问始终报404,controller没执行到,各种排查找不到问题,把路径名字改了不用loginByPhoneNumber就能访问了。
重启项目后,又莫名其妙的报错上面问题的controller找不到,controller明明就在代码里面,打印出来其他controller都有就它一个没得,把这个controller的位置换到其他平级controller后面,又能找到controller了。
重装重启各种都还是有问题,这根本是什么原因,太扯了
正在回答
同学你好 合并回答一下 https://class.imooc.com/course/qadetail/326401
我也很理解你的感受,有时候我遇到问题也要疯狂 debug 半天,最后快崩溃的时候,发现是一个特别小的问题引起的,我觉得这个应该不是 egg 的 bug,因为 egg 的健壮性 还是有保证的,使用的也是比较多的,在本地一起排查看看吧
个人觉得Egg在这块还是有些缺点,就比方说插件Plugin,我需要一个Sequelize,我需要使用egg-Sequelize,如果我需要ts版本的Sequelize那么抱歉Egg.js官方并没有封装这个插件,那么我只有自己封装,但是自己封装首先你必须非常熟悉被封装的插件+Egg.js插件封装机制。这对于只想使用Egg插件的人来说是一件痛苦的事情。(本来想解决一个问题,结果为了解决这个问题又出现了2个问题)
打个比方,lodash 就是对 JS 的一些数据结构操作进行了封装,加强原生 JS 中操作数组/对象的方法,我认为学习1个月的JS也可以封装出一个对象的深拷贝,但是 lodash 官方对深拷贝写了大量的边界情况处理,如果是闲暇时间学习原生看 lodash 这种封装思路无可厚非,但只想使用这个功能却要被迫了解一大堆内容很让人上头。
就比方说 mongodb 目前最新的版本是 4.13.0,mongoose 最新版本是6.8.1,而目前 egg-mongoose最后一次更新的时间是在2年前,所依赖的 mongoose 是 5.10.9,这个版本的 mongoose 依赖 mongodb 的版本是3.7.3,隔了一个大版本差距。
Egg.js这个框架在使用的过程中如果报错,稍微复杂一点的错误,开发经验不足的人很难自己独立解决这个错误。错误堆栈也很长,从上看到下还要拉滚动条。
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星