我使用Lerna处理我的仓库中的多个包裹。
基本上,我有一个包@pkg/server
我的Node / Express App和另一个包@pkg/model
我的mongoose Schema所在的包。
我的REST API使用了一些模型,import ModelA from '@pkg/model'
。
问题是这两个包都有mongoose
作为依赖项(@pkg/server
使用mongoose建立与mongoDB服务器的连接,@pkg/model
使用mongoose定义模式和型号)。
在我的服务器中,每当我尝试拨打ModelA.find(...)
时,它就会永远挂起。从mongoose docs看,我看起来必须将模型注册到mongoose连接而不是mongoose对象本身。
我的第一个猜测是将服务器创建的连接对象传递给@pkg/model
,然后将模型注册到此连接对象。
我的问题是,这是正确的方法吗?或者有没有办法(@pkg/server
)mongoose.loadSchemas(@pkg/model)
?
答案 0 :(得分:0)
我最终要做的是,将连接传递给需要mongoose
的软件包,从而在软件包之间共享连接。
某些程序包可以注册模型,其他程序包可以进行查询,等等...