升級了 Mongoose 後,發現項目打不開了。報錯:html
MongooseError: You can not `mongoose.connect()` multiple times while connected數據庫
就是不容許你重複鏈接。搜了一下,是從 v5.6.1 版本開始加入這個檢查的。mongoose
看了下官方文檔,想出瞭解決方法——在 `mongoose.connect(...)` 前面加一句鏈接判斷:spa
if (mongoose.connection.readyState !== 0) { next(); return; }
其中有 `next()` 是由於我作成了中間件,其實關鍵是看 `mongoose.connection.readyState`,其爲 0 時,表示未鏈接到數據庫,那麼接下來就 `mongoose.connect()` 便可,如不等於 0 ,說明已經鏈接上了,就不用繼續走下去了。code
貼一下 state 表明的狀態:htm
雖然麻煩了點,但減小沒必要要的重複鏈接仍是頗有必要的。中間件