猫鼬全局插件不工作(ES6)

Mongoose global plugins not working (ES6)

我 运行 遇到了 mongoose.plugin() 的问题,none 全局插件更改似乎影响了架构。

除了导入之外,我还尝试过直接在同一个 index.js 文件中编写插件,并删除指针函数。全局插件似乎没有生效。我只是想将 toJSON: { virtuals: true } 应用于所有模型。

"mongoose": "^6.0.12"
import test from './plugins/test.js'
...

// Plugins
mongoose.plugin(test)
...

// Models
import './user.js'
...

test.js内容:

export default (schema) => {
  schema.set('toJSON', { ...schema.get('toJSON'), virtuals: true })

  return schema
}

当我直接将 { toJSON: { virtuals: true } } 应用于用户模式时,它按预期工作,但我想将此插件和可能的其他插件应用于所有模型。

感谢任何帮助或信息!

我通过将插件和模型拆分到单独的文件中并创建了一个 index.js 来导入所有插件。

app.js 中,我首先导入插件,然后是模型:

...
import mongoose from 'mongoose'
import './models/plugins'
import './models
...