我正在使用 Lerna 来处理我的仓库中的多个包。
基本上,我有一个@pkg/server
我的 Node/Express 应用程序所在的包和@pkg/model
我的猫鼬模式所在的另一个包。
我的 REST API 正在使用一些模型,带有import ModelA from '@pkg/model'
.
问题是这两个包都mongoose
具有依赖项(@pkg/server
使用 mongoose 建立与 mongoDB 服务器的连接,并@pkg/model
使用 mongoose 定义模式和模型)。
在我的服务器中,每当我尝试调用时ModelA.find(...)
,它都会永远挂起。从猫鼬文档看来,我必须将模型注册到猫鼬连接而不是猫鼬对象本身。
我的第一个猜测是将服务器创建的连接对象传递给@pkg/model
,然后将模型注册到这个连接对象。
我的问题是,这是正确的做法吗?或者有没有办法做类似 (in the @pkg/server
)的事情mongoose.loadSchemas(@pkg/model)
?