1

我正在使用 typescript、mean stack、inversify-express-utils 和 inversifyjs 作为我的 IOC 容器来开发应用程序。我在 inversify.config.ts 文件中为将模型添加到容器的条目中的条目收到错误消息。例如,

反转.config.ts:

container.bind<Model<Document>>(TYPES.Document).to(User).whenTargetNamed("userSchema");

这似乎导致以下错误:“模型类型的参数不可分配给'new(...args:any [])=> Model'类型的参数。类型'IUserModel'不是可分配类型'Model'。 'IUserModel' 类型中缺少属性 'findByid'。”

igroupmodel.ts:

export interface IUserModel extends IUser, Document

类型.ts:

Document: Symbol("Model")

group.js(最后一行):

export let User = mongoose.model<IUserModel>("User", UserSchema);

将猫鼬模型注入容器的正确方法是什么?我一直在寻找一个演示如何使用 inversifyjs 和 mongoose 的示例,但尚未找到解决方案。

更新:当我用 toConstantValue(User) 替换 to(User) 时,我不再收到错误消息。但是,我的日志文件似乎在我的日志文件中显示以下错误:

“错误:没有为 serviceIdentifier 找到匹配的绑定:模型”

4

1 回答 1

2

您可以在此处找到 mongoose + inversify 的示例。该示例使用洋葱架构,但如果您不喜欢它,您应该能够使用不同的架构......

于 2017-07-06T12:50:33.487 回答