egg + mongoose,无法正常连接mongoose,浏览器一直停在 等候 状态,求助大神
发布于 4 个月前 作者 Solomonqoo 1209 次浏览 来自 问答

egg + mongoose,无法正常连接mongoose,浏览器一直停在 等候 状态,求助大神

我使用egg + mongoose,按标准的方式,就是无法访问mongodb,不管mongodb是关闭或启动,都无法访问,在浏览器就停在那里!

01、app\model\admin.js image.png

02、app\controller\admin\dbtest.js

image.png 03、app\router.js

image.png 04、config\config.default.js image.png 05、config\plugin.js image.png 06、打开浏览器,输入http://127.0.0.1:7001/db/dbtest image.png 画面就一直停在那里wait

07、执行的结果(console) image.png 没有其他的代码了,就只用了egg-init --type=simple mongolab

mongodb可正常连线 image.png 浏览器打开後,输入http://127.0.0.1:7001/db/dbtest

visual studio code的console显示如下

image.png

有进入执行, 但是到了var result = await this.ctx.model.find({})) ;
就停住了,浏览器也一直停在那里,没有结束,一直呈现「等候」的状态。

麻烦大神了

13 回复

显式指定数据库端口号再试试,我这的配置是可以连接的。

config.mongoose = {
    client: {
      url: 'mongodb://127.0.0.1:27017/mydb',
      options: {
        autoReconnect: true,
        reconnectTries: Number.MAX_VALUE,
        bufferMaxEntries: 0,
      },
    },
  };

看完真的觉得自已很白痴,配置语法用错了!原来是用:exports.mongoose ={
image.png

後来改成config.mongoose ={ image.png

这样就好了,真的是吐血~~~~

额。。。 低级错误,module.exportsexports

真的,低级错误!我还是照著视频做的,视频里,config.default.js里,也是用exports.mongoose = {,而不是用config.mongoose = { ,但就是不知道,为何视频里的 系统会正常运作,而我的就出错误!

它上面估计有一句 const config = exports = {}

原视频附的课程代码(左边);我自已写的(用egg-init产生的,没有特别去改写) image.png 碉实多了config = exports image.png

真是坑人,一直卡在这里2天了!

这个嘛,你觉得谁坑了你呢?

我觉得更多的是基础没打好。

我觉得被视频坑了。但很感谢你指出问题点,谢谢你了!

其实大家都无奈。

  • 他们视频录制的时候,估计是早期,那时我们的骨架是有 exports 这句的。
  • 后面我觉得没必要,这是一个 Node 的常识,所以去掉了。
  • 现在我觉得还是加一个防呆功能好点。。。 已经加回去了。无奈。

PS:看视频并不是一个好的学习方式。

没办法,我初学,而且我使用的是egg-init 建立的config.default.js,骨架是没有exports的,所以没有注意到,总之很感谢你!

初学者最好是多看官方文档,因为文档是最新的。看视频的东西不知道落后了好多

@lzq920 他这个问题,其实还是因为 Node 基础问题,我们文档基本上都是兼容的,所以除非是大版本之间的区别,否则一般也就是低效率和高效率新写法的区别,但不会有不兼容的情况。

回到顶部